
int cut_main(int argc,char **argv)

{
  char cVar1;
  bool bVar2;
  undefined *puVar3;
  uint uVar4;
  int iVar5;
  undefined *puVar6;
  undefined *puVar7;
  char *pcVar8;
  char *pcVar9;
  int iVar10;
  uint uVar11;
  uint uVar12;
  char *pcVar13;
  int iVar14;
  byte *pbVar15;
  undefined4 *puVar16;
  char *pcVar17;
  byte *pbVar18;
  byte *pbVar19;
  char **ppcVar20;
  int *piVar21;
  undefined4 *puVar22;
  int iVar23;
  undefined4 *puVar24;
  int iVar25;
  uint uVar26;
  int iVar27;
  int *piVar28;
  code *pcVar29;
  undefined8 uVar30;
  byte *pbStack_1ec;
  undefined4 uStack_1e8;
  undefined4 uStack_1e4;
  int iStack_1e0;
  undefined4 auStack_1dc [2];
  undefined4 uStack_1d4;
  undefined4 uStack_1d0;
  undefined4 uStack_1cc;
  undefined4 uStack_1b4;
  undefined1 auStack_1a8 [72];
  undefined4 uStack_160;
  undefined4 uStack_104;
  undefined4 uStack_100;
  undefined4 uStack_fc;
  undefined4 *puStack_f8;
  undefined4 uStack_f4;
  undefined2 uStack_f0;
  undefined1 uStack_ee;
  byte *pbStack_c4;
  undefined4 uStack_c0;
  int iStack_74;
  int *piStack_70;
  uint uStack_68;
  int iStack_60;
  undefined4 uStack_5c;
  char *sopt;
  char *ltok;
  char *line;
  char delimiter [2];
  
  uVar4 = (*(code *)PTR_getopt32_0012a30c)(argv,PTR_UINT_0012a18c + -0x1760,&sopt,&sopt);
  if ((uVar4 & 7) == 0) {
    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)
                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f3c);
  }
  if ((uVar4 & 8) != 0) {
    puVar22 = (undefined4 *)(uint)(byte)*ltok;
    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;
    if (ltok[1] == '\0') goto LAB_000b2678;
    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)
                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f0c);
  }
  if ((uVar4 & 4) == 0) {
    puVar22 = (undefined4 *)0x9;
    if ((uVar4 & 0x10) != 0) {
      do {
        do {
          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)
                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,
                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);
LAB_000b2650:
          if ((uVar4 & 4) != 0) goto LAB_000b204c;
        } while ((uVar4 & 0x10) != 0);
        uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)
                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,
                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);
LAB_000b2678:
        if ((uVar4 & 4) != 0) goto LAB_000b204c;
      } while ((uVar4 & 0x10) != 0);
      if (puVar22 != (undefined4 *)0x9) {
        puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f;
        puVar6 = PTR_bb_error_msg_and_die_0012a1e4;
        (*(code *)PTR_bb_error_msg_and_die_0012a1e4)
                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0);
        puVar24 = *(undefined4 **)(puVar6 + 0x78aa4);
        pbStack_c4 = (byte *)*puVar24;
        iStack_1e0 = 0;
        uVar4 = (**(code **)(puVar6 + 0x77c40))
                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,
                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4
                           ,&iStack_1e0,&uStack_1e8);
        iVar5 = **(int **)(puVar6 + 0x78a44);
        if ((uVar4 & 4) != 0) {
          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);
        }
        iVar25 = -1;
        if ((uVar4 & 0x20) != 0) {
          if (iStack_1e0 != 0) {
            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);
            if (-1 < iVar25) goto LAB_000b276c;
            (**(code **)(puVar6 + 0x77b34))();
          }
          iVar25 = 0;
        }
LAB_000b276c:
        puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);
        pbVar18 = (byte *)*puVar16;
        uVar11 = uVar4 & 10;
        pbVar19 = pbVar18;
        uVar26 = uVar4;
        if (pbVar18 == (byte *)0x0) goto LAB_000b2834;
        pbVar15 = (byte *)(uint)*pbVar18;
        if (pbVar15 != &DAT_0000002b) goto LAB_000b2a78;
        pbVar19 = pbVar18 + 1;
        pbVar18 = (byte *)puVar16[1];
        puVar16 = puVar16 + 1;
        if (uVar11 != 0) goto LAB_000b2b34;
        uVar26 = uVar4 | 2;
        if (pbVar18 != (byte *)0x0) goto LAB_000b2a90;
        uVar12 = uVar4 & 0x10;
        pbStack_1ec = pbVar18;
LAB_000b27b0:
        pcVar29 = *(code **)(puVar6 + 0x78a84);
        uVar4 = uVar26;
        if (uVar12 == 0) goto LAB_000b2850;
LAB_000b27b8:
        (**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);
        auStack_1dc[0] = uStack_160;
        pbVar18 = pbVar19;
        do {
          puVar22 = auStack_1dc;
          puVar16 = &uStack_1d4;
          (**(code **)(puVar6 + 0x789dc))(puVar22);
          if (pbStack_1ec == (byte *)0x0) {
LAB_000b28d0:
            uVar26 = uVar4;
            if (pbVar18 == (byte *)0x0) {
              iVar5 = *(int *)(puVar6 + 0x77b00);
              if (iVar25 != -1) {
                iVar23 = iVar25 * 3;
                iVar10 = iVar23 + 8;
                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);
                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);
                uStack_100 = *(undefined4 *)(iVar5 + -20000);
                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);
                puStack_f8 = puVar16;
                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);
                iVar5 = iVar10;
                if (iVar25 != 0) {
                  iVar27 = iVar23 + 9;
                  iVar5 = iVar23 + 10;
                  goto LAB_000b2988;
                }
LAB_000b29b4:
                pbVar18 = (byte *)&uStack_104;
                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;
                goto LAB_000b29c0;
              }
              iVar23 = *(int *)(puVar6 + 0x77b00);
              if ((uVar4 & 1) != 0) {
                iVar5 = 0x18;
                iVar27 = 0x17;
                iVar10 = 0x16;
                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);
                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);
                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);
                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);
                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);
                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);
                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);
LAB_000b2988:
                uVar26 = 0x7a;
                if ((uVar4 & 4) != 0) {
                  uVar26 = 0x5a;
                }
                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);
                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;
                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;
                goto LAB_000b29b4;
              }
              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);
            }
            else {
LAB_000b29c0:
              uVar4 = uVar26;
              if (*pbVar18 == 0) {
                **(undefined1 **)(puVar6 + 0x77c9c) = 0;
                goto LAB_000b29d0;
              }
            }
            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);
            if (iVar5 != 0) {
              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);
            }
            puVar16 = (undefined4 *)&DAT_00000400;
            (**(code **)(puVar6 + 0x788cc))
                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);
LAB_000b29d0:
            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));
            if (pbStack_c4 == (byte *)*puVar24) {
              return 0;
            }
            pbVar15 = pbStack_c4;
            uVar11 = (**(code **)(puVar6 + 0x78a20))();
LAB_000b2a78:
            pbVar19 = pbVar18;
            uVar26 = uVar4;
            if (uVar11 != 0) goto LAB_000b2b3c;
            pbVar19 = (byte *)0x0;
            uVar26 = uVar4 | 2;
LAB_000b2a90:
            pbStack_1ec = pbVar18;
            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);
            pbVar15 = pbVar18 + iVar5;
            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);
            puVar22 = puVar16;
            if (*pbVar15 != 0) goto LAB_000b2b48;
            uVar11 = iVar5 - 8;
            uVar4 = uVar11 & 1;
            if (uVar11 < 5) goto LAB_000b2ad4;
LAB_000b2ac4:
            pbVar15 = *(byte **)(puVar6 + 0x77c24);
            do {
              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);
LAB_000b2ad4:
              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {
                puVar16 = puVar22;
                if (uVar11 != 0) {
                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);
                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);
                  pbVar15 = pbStack_1ec;
                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);
                }
                do {
                  pbVar18 = (byte *)puVar16[1];
LAB_000b2b34:
                  uVar12 = uVar26 & 0x10;
                  puVar22 = puVar16;
                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;
LAB_000b2b3c:
                  uVar30 = (**(code **)(puVar6 + 0x77b34))();
LAB_000b2b48:
                  puVar16 = puVar22;
                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||
                         (9 < pbVar15[2] - 0x30)) ||
                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));
                uVar4 = uVar11 & 1;
                if (4 < uVar11) goto LAB_000b2ac4;
              }
            } while( true );
          }
          uStack_1d4 = 0;
          uStack_1d0 = 0;
          uStack_1cc = 0;
          if ((uVar4 & 0x40) == 0) {
            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);
LAB_000b2874:
            if (*pbStack_1ec != 0x40) {
              uStack_1b4 = 0xffffffff;
            }
            puVar16 = &uStack_1d4;
            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();
            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))
            {
              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);
            }
            goto LAB_000b28d0;
          }
          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);
          if (iVar5 != 0) goto LAB_000b2874;
          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);
          pbVar19 = pbVar18;
          uVar26 = uVar4;
LAB_000b2834:
          uVar12 = uVar26 & 0x10;
          if (uVar11 != 0) goto LAB_000b27b0;
          uVar4 = uVar26 | 2;
          pbStack_1ec = (byte *)0x0;
          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;
          pcVar29 = *(code **)(puVar6 + 0x78a84);
LAB_000b2850:
          (*pcVar29)(auStack_1dc);
          pbVar18 = pbVar19;
        } while( true );
      }
    }
  }
  else {
    puVar22 = (undefined4 *)0x9;
  }
LAB_000b204c:
  uVar4 = 0;
  piVar21 = (int *)0x0;
  iVar5 = *(int *)PTR_optind_0012b0ec;
  puVar6 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x6a44;
  puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;
  do {
    do {
      ltok = (char *)(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6);
      if (ltok == (char *)0x0) {
        if (uVar4 == 0) {
          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)
                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);
        }
        ppcVar20 = argv + iVar5;
        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);
        if (*ppcVar20 == (char *)0x0) {
          ppcVar20 = ppcVar20 + -1;
          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;
        }
        puVar7 = PTR_fopen_or_warn_stdin_0012a3f0;
        puVar6 = PTR_xmalloc_fgetline_0012a2fc;
        uStack_5c = 0;
        do {
          iVar5 = (*(code *)puVar7)();
          if (iVar5 == 0) {
            uStack_5c = 1;
          }
          else {
            iStack_74 = 0;
            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {
              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);
              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);
              pcVar8 = line;
              puVar3 = PTR_stdout_0012ae40;
              uVar26 = *(uint *)PTR_option_mask32_0012a334;
              if ((uVar26 & 3) == 0) {
                if (puVar22 == (undefined4 *)&DAT_0000000a) {
                  iVar25 = *piVar21;
                  if (iVar25 <= iStack_74) {
                    if (iVar25 < iStack_74) {
                      iVar10 = 0;
                      do {
                        iVar25 = iVar25 + 1;
                        if (piVar21[iVar10 * 2 + 1] < iVar25) {
                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;
                          iVar25 = piVar21[iVar10 * 2 + 2];
LAB_000b2350:
                          iVar10 = iVar10 + 1;
                          if (iStack_74 < iVar25) goto LAB_000b22d0;
                        }
                        else if (piVar21[iVar10 * 2 + 1] == -1) {
                          if (iVar10 + 1U < uVar4) {
                            iVar25 = piVar21[iVar10 * 2 + 2];
                            goto LAB_000b2350;
                          }
                          goto LAB_000b22d0;
                        }
                      } while (iVar25 < iStack_74);
                    }
                    (*(code *)PTR_puts_0012afb4)(line);
                  }
                }
                else {
                  delimiter[1] = '\0';
                  delimiter[0] = (char)puVar22;
                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);
                  puVar3 = PTR_stdout_0012ae40;
                  if (iVar25 != 0) {
                    iVar25 = 0;
                    iVar10 = -1;
                    uStack_68 = 1;
                    iStack_60 = 0;
                    pcVar9 = pcVar8;
                    piStack_70 = piVar21;
                    while( true ) {
                      iVar27 = *piStack_70;
                      do {
                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {
                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);
                          pcVar9 = line;
                        }
                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&
                           (*(char *)(iVar23 + iVar10) == '\0')) {
                          iVar14 = *(int *)puVar3;
                          if (iStack_60 != 0) {
                            pcVar9 = *(char **)(iVar14 + 0x14);
                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {
                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;
                              *pcVar9 = (char)puVar22;
                              iVar14 = *(int *)puVar3;
                            }
                            else {
                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);
                              iVar14 = *(int *)puVar3;
                            }
                          }
                          iStack_60 = iStack_60 + 1;
                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);
                          *(char *)(iVar23 + iVar10) = 'X';
                        }
                        iVar27 = iVar27 + 1;
                        pcVar9 = line;
                        if (piStack_70[1] < iVar27) {
                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;
                          goto LAB_000b24fc;
                        }
                        if (line == (char *)0x0) goto LAB_000b252c;
                      } while (piStack_70[1] != -1);
                      if (uVar4 <= uStack_68) break;
LAB_000b24fc:
                      piStack_70 = piStack_70 + 2;
                      uStack_68 = uStack_68 + 1;
                    }
LAB_000b252c:
                    iVar10 = *(int *)puVar3;
                    pcVar9 = *(char **)(iVar10 + 0x14);
                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;
                    goto LAB_000b22bc;
                  }
                  if ((uVar26 & 0x10) == 0) {
                    (*(code *)PTR_puts_0012afb4)(pcVar8);
                  }
                }
              }
              else {
                iVar10 = *(int *)PTR_stdout_0012ae40;
                pcVar9 = *(char **)(iVar10 + 0x14);
                pcVar13 = *(char **)(iVar10 + 0x18);
                piVar28 = piVar21;
                do {
                  while (iVar27 = *piVar28, iVar25 <= iVar27) {
LAB_000b22a0:
                    piVar28 = piVar28 + 2;
                    if (piVar21 + uVar4 * 2 == piVar28) {
                      bVar2 = pcVar9 < pcVar13;
                      goto LAB_000b22b4;
                    }
                  }
                  pcVar17 = (char *)(iVar23 + iVar27);
                  do {
                    if (*pcVar17 == '\0') {
                      *pcVar17 = 'X';
                      cVar1 = line[iVar27];
                      if (pcVar13 <= pcVar9) {
                        (*(code *)PTR___overflow_0012ada8)();
                        iVar10 = *(int *)puVar3;
                        pcVar9 = *(char **)(iVar10 + 0x14);
                        pcVar13 = *(char **)(iVar10 + 0x18);
                        goto LAB_000b228c;
                      }
                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;
                      *pcVar9 = cVar1;
                      iVar10 = *(int *)puVar3;
                      pcVar9 = *(char **)(iVar10 + 0x14);
                      pcVar13 = *(char **)(iVar10 + 0x18);
                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;
                    }
                    else {
LAB_000b228c:
                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;
                    }
                    iVar27 = iVar27 + 1;
                    pcVar17 = pcVar17 + 1;
                  } while (iVar25 != iVar27);
                  piVar28 = piVar28 + 2;
                } while (piVar21 + uVar4 * 2 != piVar28);
                bVar2 = pcVar9 < pcVar13;
LAB_000b22b4:
                if (bVar2) {
LAB_000b2544:
                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;
                  *pcVar9 = '\n';
                }
                else {
LAB_000b22bc:
                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);
                }
              }
LAB_000b22d0:
              iStack_74 = iStack_74 + 1;
              (*(code *)PTR_free_0012b168)(iVar23);
              (*(code *)PTR_free_0012b168)(pcVar8);
            }
            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);
          }
          ppcVar20 = ppcVar20 + 1;
          if (*ppcVar20 == (char *)0x0) {
            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);
            return iVar5;
          }
        } while( true );
      }
    } while (*ltok == '\0');
    pcVar8 = (char *)(*(code *)PTR_strsep_0012afa0)(&ltok,puVar7);
    if ((*pcVar8 == '\0') || (iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8), iVar25 == 0))
    {
      iVar25 = 0;
      if (ltok != (char *)0x0) goto LAB_000b25f8;
LAB_000b20c8:
      iVar23 = -1;
    }
    else {
      iVar25 = iVar25 + -1;
      if (ltok == (char *)0x0) goto LAB_000b20c8;
LAB_000b25f8:
      iVar23 = 0x7fffffff;
      if (*ltok != '\0') {
        iVar23 = 0x7ffffffe;
        iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();
        if (iVar10 != 0) {
          iVar23 = iVar10 + -1;
        }
        if (iVar25 == iVar23) {
          iVar23 = -1;
        }
      }
    }
    piVar21 = (int *)(*(code *)PTR_xrealloc_vector_helper_0012a3b8)(piVar21,0x804,uVar4);
    iVar10 = uVar4 * 2;
    uVar4 = uVar4 + 1;
    piVar21[iVar10] = iVar25;
    (piVar21 + iVar10)[1] = iVar23;
  } while( true );
}



undefined4 FUN_000b1f74(undefined4 param_1,int param_2)

{
  undefined1 uVar1;
  bool bVar2;
  undefined *puVar3;
  uint uVar4;
  undefined *puVar5;
  undefined *puVar6;
  char *pcVar7;
  int iVar8;
  int iVar9;
  int iVar10;
  undefined1 *puVar11;
  int iVar12;
  uint uVar13;
  uint uVar14;
  undefined1 *puVar15;
  int iVar16;
  byte *pbVar17;
  undefined4 *puVar18;
  byte *pbVar19;
  byte *pbVar20;
  int *piVar21;
  undefined4 *puVar22;
  int *piVar23;
  undefined4 *puVar24;
  int *piVar25;
  uint uVar26;
  int iVar27;
  int *piVar28;
  int iVar29;
  code *pcVar30;
  undefined8 uVar31;
  byte *local_1ec;
  undefined4 local_1e8;
  undefined4 local_1e4;
  int local_1e0;
  undefined4 local_1dc [2];
  undefined4 local_1d4;
  undefined4 local_1d0;
  undefined4 local_1cc;
  undefined4 local_1b4;
  undefined1 auStack_1a8 [72];
  undefined4 local_160;
  undefined4 local_104;
  undefined4 local_100;
  undefined4 local_fc;
  undefined4 *local_f8;
  undefined4 local_f4;
  undefined2 local_f0;
  undefined1 local_ee;
  byte *local_c4;
  undefined4 uStack_c0;
  int local_74;
  int *local_70;
  uint local_68;
  int local_60;
  undefined4 local_5c;
  undefined1 auStack_3c [4];
  byte *local_38;
  int local_34;
  undefined1 local_30;
  undefined1 local_2f;
  undefined4 local_2c;
  
  local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;
  uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);
  if ((uVar4 & 7) == 0) {
    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);
  }
  if ((uVar4 & 8) != 0) {
    puVar22 = (undefined4 *)(uint)*local_38;
    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;
    if (local_38[1] == 0) goto LAB_000b2678;
    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);
  }
  if ((uVar4 & 4) == 0) {
    puVar22 = (undefined4 *)0x9;
    if ((uVar4 & 0x10) != 0) {
      do {
        do {
          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);
LAB_000b2650:
          if ((uVar4 & 4) != 0) goto LAB_000b204c;
        } while ((uVar4 & 0x10) != 0);
        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);
LAB_000b2678:
        if ((uVar4 & 4) != 0) goto LAB_000b204c;
      } while ((uVar4 & 0x10) != 0);
      if (puVar22 != (undefined4 *)0x9) {
        puVar6 = PTR_FUN_0012a1a8 + 0x727f;
        puVar5 = PTR_FUN_0012a1e4;
        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);
        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);
        local_c4 = (byte *)*puVar24;
        local_1e0 = 0;
        uVar4 = (**(code **)(puVar5 + 0x77c40))
                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,
                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,
                           &local_1e0,&local_1e8);
        iVar12 = **(int **)(puVar5 + 0x78a44);
        if ((uVar4 & 4) != 0) {
          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);
        }
        iVar8 = -1;
        if ((uVar4 & 0x20) != 0) {
          if (local_1e0 != 0) {
            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);
            if (-1 < iVar8) goto LAB_000b276c;
            (**(code **)(puVar5 + 0x77b34))();
          }
          iVar8 = 0;
        }
LAB_000b276c:
        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);
        pbVar19 = (byte *)*puVar18;
        uVar13 = uVar4 & 10;
        pbVar20 = pbVar19;
        uVar26 = uVar4;
        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;
        pbVar17 = (byte *)(uint)*pbVar19;
        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;
        pbVar20 = pbVar19 + 1;
        pbVar19 = (byte *)puVar18[1];
        puVar18 = puVar18 + 1;
        if (uVar13 != 0) goto LAB_000b2b34;
        uVar26 = uVar4 | 2;
        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;
        uVar14 = uVar4 & 0x10;
        local_1ec = pbVar19;
LAB_000b27b0:
        pcVar30 = *(code **)(puVar5 + 0x78a84);
        uVar4 = uVar26;
        if (uVar14 == 0) goto LAB_000b2850;
LAB_000b27b8:
        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);
        local_1dc[0] = local_160;
        pbVar19 = pbVar20;
        do {
          puVar22 = local_1dc;
          puVar18 = &local_1d4;
          (**(code **)(puVar5 + 0x789dc))(puVar22);
          if (local_1ec == (byte *)0x0) {
LAB_000b28d0:
            uVar26 = uVar4;
            if (pbVar19 == (byte *)0x0) {
              iVar12 = *(int *)(puVar5 + 0x77b00);
              if (iVar8 != -1) {
                iVar9 = iVar8 * 3;
                iVar10 = iVar9 + 8;
                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);
                local_104 = *(undefined4 *)(iVar12 + -0x4e24);
                local_100 = *(undefined4 *)(iVar12 + -20000);
                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);
                local_f8 = puVar18;
                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);
                iVar12 = iVar10;
                if (iVar8 != 0) {
                  iVar16 = iVar9 + 9;
                  iVar12 = iVar9 + 10;
                  goto LAB_000b2988;
                }
LAB_000b29b4:
                pbVar19 = (byte *)&local_104;
                *(undefined1 *)((int)&local_104 + iVar12) = 0;
                goto LAB_000b29c0;
              }
              iVar9 = *(int *)(puVar5 + 0x77b00);
              if ((uVar4 & 1) != 0) {
                iVar12 = 0x18;
                iVar16 = 0x17;
                iVar10 = 0x16;
                local_104 = *(undefined4 *)(iVar9 + -0x4e10);
                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);
                local_fc = *(undefined4 *)(iVar9 + -0x4e08);
                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);
                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);
                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);
                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);
LAB_000b2988:
                uVar26 = 0x7a;
                if ((uVar4 & 4) != 0) {
                  uVar26 = 0x5a;
                }
                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);
                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;
                *(char *)((int)&local_104 + iVar16) = (char)uVar26;
                goto LAB_000b29b4;
              }
              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);
            }
            else {
LAB_000b29c0:
              uVar4 = uVar26;
              if (*pbVar19 == 0) {
                **(undefined1 **)(puVar5 + 0x77c9c) = 0;
                goto LAB_000b29d0;
              }
            }
            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);
            if (iVar12 != 0) {
              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);
            }
            puVar18 = (undefined4 *)0x400;
            (**(code **)(puVar5 + 0x788cc))
                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);
LAB_000b29d0:
            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));
            if (local_c4 == (byte *)*puVar24) {
              return 0;
            }
            pbVar17 = local_c4;
            uVar13 = (**(code **)(puVar5 + 0x78a20))();
LAB_000b2a78:
            pbVar20 = pbVar19;
            uVar26 = uVar4;
            if (uVar13 != 0) goto LAB_000b2b3c;
            pbVar20 = (byte *)0x0;
            uVar26 = uVar4 | 2;
LAB_000b2a90:
            local_1ec = pbVar19;
            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);
            pbVar17 = pbVar19 + iVar12;
            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);
            puVar22 = puVar18;
            if (*pbVar17 != 0) goto LAB_000b2b48;
            uVar13 = iVar12 - 8;
            uVar4 = uVar13 & 1;
            if (uVar13 < 5) goto LAB_000b2ad4;
LAB_000b2ac4:
            pbVar17 = *(byte **)(puVar5 + 0x77c24);
            do {
              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);
LAB_000b2ad4:
              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {
                puVar18 = puVar22;
                if (uVar13 != 0) {
                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);
                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);
                  pbVar17 = local_1ec;
                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);
                }
                do {
                  pbVar19 = (byte *)puVar18[1];
LAB_000b2b34:
                  uVar14 = uVar26 & 0x10;
                  puVar22 = puVar18;
                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;
LAB_000b2b3c:
                  uVar31 = (**(code **)(puVar5 + 0x77b34))();
LAB_000b2b48:
                  puVar18 = puVar22;
                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||
                         (9 < pbVar17[2] - 0x30)) ||
                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));
                uVar4 = uVar13 & 1;
                if (4 < uVar13) goto LAB_000b2ac4;
              }
            } while( true );
          }
          local_1d4 = 0;
          local_1d0 = 0;
          local_1cc = 0;
          if ((uVar4 & 0x40) == 0) {
            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);
LAB_000b2874:
            if (*local_1ec != 0x40) {
              local_1b4 = 0xffffffff;
            }
            puVar18 = &local_1d4;
            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();
            if (((uVar4 & 2) != 0) &&
               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {
              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);
            }
            goto LAB_000b28d0;
          }
          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);
          if (iVar12 != 0) goto LAB_000b2874;
          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);
          pbVar20 = pbVar19;
          uVar26 = uVar4;
LAB_000b2834:
          uVar14 = uVar26 & 0x10;
          if (uVar13 != 0) goto LAB_000b27b0;
          uVar4 = uVar26 | 2;
          local_1ec = (byte *)0x0;
          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;
          pcVar30 = *(code **)(puVar5 + 0x78a84);
LAB_000b2850:
          (*pcVar30)(local_1dc);
          pbVar19 = pbVar20;
        } while( true );
      }
    }
  }
  else {
    puVar22 = (undefined4 *)0x9;
  }
LAB_000b204c:
  uVar4 = 0;
  piVar21 = (int *)0x0;
  local_74 = *(int *)PTR_optind_0012b0ec;
  puVar5 = PTR_FUN_0012a1a8 + -0x6a44;
  puVar6 = PTR_FUN_0012a1a8 + -0x1308;
  piVar23 = (int *)PTR_FUN_0012a1a8;
  do {
    do {
      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);
      if (local_38 == (byte *)0x0) {
        if (uVar4 == 0) {
          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);
        }
        piVar25 = (int *)(param_2 + local_74 * 4);
        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);
        if (*piVar25 == 0) {
          piVar25 = piVar25 + -1;
          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);
        }
        puVar6 = PTR_FUN_0012a3f0;
        puVar5 = PTR_FUN_0012a2fc;
        local_5c = 0;
LAB_000b216c:
        iVar12 = (*(code *)puVar6)();
        if (iVar12 == 0) {
          local_5c = 1;
          goto LAB_000b21b8;
        }
        piVar23 = &local_34;
        local_74 = 0;
        do {
          iVar8 = (*(code *)puVar5)(iVar12);
          local_34 = iVar8;
          if (iVar8 == 0) {
            (*(code *)PTR_FUN_0012a3f4)(iVar12);
LAB_000b21b8:
            piVar25 = piVar25 + 1;
            if (*piVar25 != 0) goto LAB_000b216c;
            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);
          }
          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);
          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);
          iVar8 = local_34;
          puVar3 = PTR_stdout_0012ae40;
          uVar26 = *(uint *)PTR_DAT_0012a334;
          if ((uVar26 & 3) == 0) {
            if (puVar22 == (undefined4 *)&DAT_0000000a) {
              iVar9 = *piVar21;
              if (iVar9 <= local_74) {
                if (iVar9 < local_74) {
                  iVar16 = 0;
                  do {
                    iVar9 = iVar9 + 1;
                    if (piVar21[iVar16 * 2 + 1] < iVar9) {
                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;
                      iVar9 = piVar21[iVar16 * 2 + 2];
LAB_000b2350:
                      iVar16 = iVar16 + 1;
                      if (local_74 < iVar9) goto LAB_000b22d0;
                    }
                    else if (piVar21[iVar16 * 2 + 1] == -1) {
                      if (iVar16 + 1U < uVar4) {
                        iVar9 = piVar21[iVar16 * 2 + 2];
                        goto LAB_000b2350;
                      }
                      goto LAB_000b22d0;
                    }
                  } while (iVar9 < local_74);
                }
                (*(code *)PTR_puts_0012afb4)(local_34);
              }
            }
            else {
              local_2f = 0;
              local_30 = (char)puVar22;
              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);
              puVar3 = PTR_stdout_0012ae40;
              if (iVar9 != 0) {
                iVar16 = 0;
                iVar27 = -1;
                local_68 = 1;
                local_60 = 0;
                iVar9 = iVar8;
                local_70 = piVar21;
                while( true ) {
                  iVar29 = *local_70;
                  do {
                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {
                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);
                      iVar9 = local_34;
                    }
                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&
                       (*(char *)(iVar10 + iVar27) == '\0')) {
                      iVar9 = *(int *)puVar3;
                      if (local_60 != 0) {
                        puVar11 = *(undefined1 **)(iVar9 + 0x14);
                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {
                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;
                          *puVar11 = (char)puVar22;
                          iVar9 = *(int *)puVar3;
                        }
                        else {
                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);
                          iVar9 = *(int *)puVar3;
                        }
                      }
                      local_60 = local_60 + 1;
                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);
                      *(char *)(iVar10 + iVar27) = 'X';
                    }
                    iVar29 = iVar29 + 1;
                    iVar9 = local_34;
                    if (local_70[1] < iVar29) {
                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;
                      goto LAB_000b24fc;
                    }
                    if (local_34 == 0) goto LAB_000b252c;
                  } while (local_70[1] != -1);
                  if (uVar4 <= local_68) break;
LAB_000b24fc:
                  local_70 = local_70 + 2;
                  local_68 = local_68 + 1;
                }
LAB_000b252c:
                iVar16 = *(int *)puVar3;
                puVar11 = *(undefined1 **)(iVar16 + 0x14);
                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;
                goto LAB_000b22bc;
              }
              if ((uVar26 & 0x10) == 0) {
                (*(code *)PTR_puts_0012afb4)(iVar8);
              }
            }
          }
          else {
            iVar16 = *(int *)PTR_stdout_0012ae40;
            puVar11 = *(undefined1 **)(iVar16 + 0x14);
            puVar15 = *(undefined1 **)(iVar16 + 0x18);
            piVar28 = piVar21;
            do {
              while (iVar27 = *piVar28, iVar9 <= iVar27) {
LAB_000b22a0:
                piVar28 = piVar28 + 2;
                if (piVar21 + uVar4 * 2 == piVar28) {
                  bVar2 = puVar11 < puVar15;
                  goto LAB_000b22b4;
                }
              }
              pcVar7 = (char *)(iVar10 + iVar27);
              do {
                if (*pcVar7 == '\0') {
                  *pcVar7 = 'X';
                  uVar1 = *(undefined1 *)(local_34 + iVar27);
                  if (puVar15 <= puVar11) {
                    (*(code *)PTR___overflow_0012ada8)();
                    iVar16 = *(int *)puVar3;
                    puVar11 = *(undefined1 **)(iVar16 + 0x14);
                    puVar15 = *(undefined1 **)(iVar16 + 0x18);
                    goto LAB_000b228c;
                  }
                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;
                  *puVar11 = uVar1;
                  iVar16 = *(int *)puVar3;
                  puVar11 = *(undefined1 **)(iVar16 + 0x14);
                  puVar15 = *(undefined1 **)(iVar16 + 0x18);
                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;
                }
                else {
LAB_000b228c:
                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;
                }
                iVar27 = iVar27 + 1;
                pcVar7 = pcVar7 + 1;
              } while (iVar9 != iVar27);
              piVar28 = piVar28 + 2;
            } while (piVar21 + uVar4 * 2 != piVar28);
            bVar2 = puVar11 < puVar15;
LAB_000b22b4:
            if (bVar2) {
LAB_000b2544:
              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;
              *puVar11 = 10;
            }
            else {
LAB_000b22bc:
              (*(code *)PTR___overflow_0012ada8)(iVar16,10);
            }
          }
LAB_000b22d0:
          local_74 = local_74 + 1;
          (*(code *)PTR_free_0012b168)(iVar10);
          (*(code *)PTR_free_0012b168)(iVar8);
        } while( true );
      }
    } while (*local_38 == 0);
    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);
    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {
      piVar25 = (int *)0x0;
      if (local_38 != (byte *)0x0) goto LAB_000b25f8;
LAB_000b20c8:
      piVar23 = (int *)0xffffffff;
    }
    else {
      piVar25 = (int *)(iVar12 + -1);
      if (local_38 == (byte *)0x0) goto LAB_000b20c8;
LAB_000b25f8:
      piVar23 = (int *)0x7fffffff;
      if (*local_38 != 0) {
        piVar23 = (int *)0x7ffffffe;
        iVar12 = (*(code *)PTR_FUN_0012a3e8)();
        if (iVar12 != 0) {
          piVar23 = (int *)(iVar12 + -1);
        }
        if (piVar25 == piVar23) {
          piVar23 = (int *)0xffffffff;
        }
      }
    }
    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);
    iVar12 = uVar4 * 2;
    uVar4 = uVar4 + 1;
    piVar21[iVar12] = (int)piVar25;
    (piVar21 + iVar12)[1] = (int)piVar23;
  } while( true );
}


lui gp,0x8
addiu gp,gp,0x1dc
addu gp,gp,t9
addiu sp,sp,-0x98
lw v0,-0x7004(gp)
lw t9,-0x7e44(gp)
sw s8,0x90(sp)
addiu s8,sp,0x60
sw s4,0x80(sp)
addiu s4,sp,0x5c
sw s1,0x74(sp)
or s1,a1,zero
sw s8,0x14(sp)
or a3,s4,zero
sw s4,0x10(sp)
or a2,s4,zero
sw gp,0x18(sp)
or a0,s1,zero
sw ra,0x94(sp)
sw s7,0x8c(sp)
sw s6,0x88(sp)
sw s5,0x84(sp)
sw s3,0x7c(sp)
sw s2,0x78(sp)
sw s0,0x70(sp)
lw a1,-0x7fc4(gp)
lw v0,0x0(v0)
addiu a1,a1,-0x1760
sw v0,0x6c(sp)
jalr t9
_nop
andi v1,v0,0x7
bne v1,zero,0x000b200c
_lw gp,0x18(sp)
lw a0,-0x7fa8(gp)
lw t9,-0x7f6c(gp)
jalr t9
_addiu a0,a0,-0x4f3c
andi v1,v0,0x8
beq v1,zero,0x000b203c
_lw v1,0x60(sp)
lbu s3,0x0(v1)
beq s3,zero,0x000b2650
_nop
lbu v1,0x1(v1)
beq v1,zero,0x000b2678
_lw a0,-0x7fa8(gp)
lw t9,-0x7f6c(gp)
jalr t9
_addiu a0,a0,-0x4f0c
andi v1,v0,0x4
beq v1,zero,0x000b2630
_andi v0,v0,0x10
li s3,0x9
lw v0,-0x7064(gp)
lui s7,0x7fff
lw s6,-0x7fa8(gp)
or s0,zero,zero
lw s5,-0x7fa8(gp)
or s2,zero,zero
lw v0,0x0(v0)
sw v0,0x24(sp)
addiu v0,s6,-0x6a44
sw v0,0x28(sp)
addiu v0,s5,-0x1308
sw v0,0x2c(sp)
lw t9,-0x71b0(gp)
or a0,s4,zero
jalr t9
_lw a1,0x28(sp)
lw gp,0x18(sp)
beq v0,zero,0x000b2100
_sw v0,0x60(sp)
lbu v0,0x0(v0)
beq v0,zero,0x000b207c
_lw t9,-0x71b0(gp)
or a0,s8,zero
jalr t9
_lw a1,0x2c(sp)
lbu v1,0x0(v0)
bne v1,zero,0x000b25d8
_lw gp,0x18(sp)
lw a0,0x60(sp)
bne a0,zero,0x000b25f8
_or s6,zero,zero
li s5,-0x1
lw t9,-0x7d98(gp)
li a1,0x804
or a0,s2,zero
jalr t9
_or a2,s0,zero
sll a0,s0,0x3
or s2,v0,zero
lw gp,0x18(sp)
addu v0,v0,a0
addiu s0,s0,0x1
sw s6,0x0(v0)
b 0x000b207c
_sw s5,0x4(v0)
bne s0,zero,0x000b2114
_lw a0,-0x7fa8(gp)
lw t9,-0x7f6c(gp)
jalr t9
_addiu a0,a0,-0x4e90
lw v0,0x24(sp)
li a2,0x8
lw a3,-0x767c(gp)
or a0,s2,zero
lw t9,-0x742c(gp)
or a1,s0,zero
sll v0,v0,0x2
addiu a3,a3,0x1f64
jalr t9
_addu s1,s1,v0
lw a0,0x0(s1)
beq a0,zero,0x000b25c4
_lw gp,0x18(sp)
lw v1,-0x7d60(gp)
sll v0,s0,0x3
addiu s8,sp,0x68
sw zero,0x3c(sp)
addu v0,v0,s2
sw v1,0x4c(sp)
sw v0,0x48(sp)
lw v1,-0x7e54(gp)
sw v1,0x50(sp)
lw t9,0x4c(sp)
jalr t9
_nop
lw gp,0x18(sp)
beq v0,zero,0x000b25b8
_sw v0,0x40(sp)
addiu s5,sp,0x64
sw zero,0x24(sp)
lw s4,0x40(sp)
lw t9,0x50(sp)
jalr t9
_or a0,s4,zero
lw gp,0x18(sp)
bne v0,zero,0x000b21d0
_sw v0,0x64(sp)
lw t9,-0x7d5c(gp)
jalr t9
_or a0,s4,zero
lw gp,0x18(sp)
addiu s1,s1,0x4
lw a0,0x0(s1)
bne a0,zero,0x000b216c
_lw t9,-0x7d58(gp)
jalr t9
_lw a0,0x3c(sp)
lw t9,-0x7214(gp)
jalr t9
_or a0,v0,zero
lw gp,0x18(sp)
addiu a0,v0,0x1
lw t9,-0x7f80(gp)
jalr t9
_sw v0,0x28(sp)
lw gp,0x18(sp)
sw v0,0x34(sp)
lw v0,0x64(sp)
sw v0,0x2c(sp)
lw v0,-0x7e1c(gp)
lw s6,0x0(v0)
andi a0,s6,0x3
beq a0,zero,0x000b22fc
_lw s4,-0x7310(gp)
li t3,0x58
lw t1,0x28(sp)
or s7,s2,zero
lw a0,0x0(s4)
lw v0,0x14(a0)
lw v1,0x18(a0)
lw s6,0x0(s7)
slt a1,s6,t1
beq a1,zero,0x000b22a0
_lw a1,0x34(sp)
addu t2,a1,s6
lbu a1,0x0(t2)
bne a1,zero,0x000b228c
_lw a1,0x64(sp)
sltu v1,v0,v1
sb t3,0x0(t2)
addu a1,a1,s6
bne v1,zero,0x000b2588
_lbu a1,0x0(a1)
lw t9,-0x73a8(gp)
sw t1,0x30(sp)
jalr t9
_sw t2,0x28(sp)
li t3,0x58
lw a0,0x0(s4)
lw gp,0x18(sp)
lw t2,0x28(sp)
lw t1,0x30(sp)
lw v0,0x14(a0)
lw v1,0x18(a0)
lw a1,0x4(s7)
addiu s6,s6,0x1
slt a1,a1,s6
beq a1,zero,0x000b2568
_nop
lw a1,0x48(sp)
addiu s7,s7,0x8
bne a1,s7,0x000b222c
_nop
sltu v1,v0,v1
bne v1,zero,0x000b2544
_addiu v1,v0,0x1
lw t9,-0x73a8(gp)
jalr t9
_li a1,0xa
lw gp,0x18(sp)
lw v0,0x24(sp)
lw t9,-0x6fe8(gp)
lw a0,0x34(sp)
addiu v0,v0,0x1
jalr t9
_sw v0,0x24(sp)
lw gp,0x18(sp)
lw t9,-0x6fe8(gp)
jalr t9
_lw a0,0x2c(sp)
b 0x000b2190
_lw s4,0x40(sp)
li v0,0xa
bne s3,v0,0x000b2384
_lw a1,0x24(sp)
lw v0,0x0(s2)
slt v1,a1,v0
bne v1,zero,0x000b22cc
_slt v1,v0,a1
beq v1,zero,0x000b2370
_li a2,-0x1
sll v1,a0,0x3
addiu v0,v0,0x1
addu v1,s2,v1
lw a1,0x4(v1)
slt t1,a1,v0
beq t1,zero,0x000b241c
_nop
addiu a0,a0,0x1
sltu v0,a0,s0
beq v0,zero,0x000b22d0
_lw v0,0x24(sp)
lw v0,0x8(v1)
lw v1,0x24(sp)
slt v1,v1,v0
bne v1,zero,0x000b22cc
_nop
lw v1,0x24(sp)
slt v1,v0,v1
bne v1,zero,0x000b2324
_sll v1,a0,0x3
lw t9,-0x719c(gp)
jalr t9
_lw a0,0x2c(sp)
b 0x000b22cc
_lw gp,0x18(sp)
lw s4,0x2c(sp)
or a1,s3,zero
lw t9,-0x71fc(gp)
sb s3,0x68(sp)
or a0,s4,zero
jalr t9
_sb zero,0x69(sp)
bne v0,zero,0x000b23c4
_lw gp,0x18(sp)
andi s6,s6,0x10
bne s6,zero,0x000b22cc
_lw t9,-0x719c(gp)
jalr t9
_or a0,s4,zero
b 0x000b22cc
_lw gp,0x18(sp)
li v0,0x1
lw s4,-0x7310(gp)
lw v1,0x2c(sp)
or t3,zero,zero
li s6,-0x1
sw v0,0x30(sp)
sw zero,0x38(sp)
sw s2,0x28(sp)
lw v0,0x28(sp)
lw s7,0x0(v0)
beq v1,zero,0x000b243c
_slt v0,s6,s7
beq v0,zero,0x000b243c
_lw t9,-0x71b0(gp)
or a1,s8,zero
or a0,s5,zero
jalr t9
_addiu s6,s6,0x1
lw gp,0x18(sp)
or t3,v0,zero
b 0x000b23ec
_lw v1,0x64(sp)
bne a1,a2,0x000b2360
_nop
addiu a0,a0,0x1
sltu v0,a0,s0
beq v0,zero,0x000b22cc
_nop
b 0x000b2350
_lw v0,0x8(v1)
beq t3,zero,0x000b24cc
_lw v0,0x28(sp)
bne s6,s7,0x000b24c8
_lw v0,0x34(sp)
addu v0,v0,s6
sw v0,0x44(sp)
lbu v0,0x0(v0)
bne v0,zero,0x000b24c8
_lw v0,0x38(sp)
beq v0,zero,0x000b2498
_lw a0,0x0(s4)
lw v0,0x14(a0)
lw v1,0x18(a0)
sltu v1,v0,v1
bne v1,zero,0x000b2554
_lw t9,-0x73a8(gp)
or a1,s3,zero
jalr t9
_sw t3,0x54(sp)
lw gp,0x18(sp)
lw a0,0x0(s4)
lw t3,0x54(sp)
lw v0,0x38(sp)
or a1,a0,zero
lw t9,-0x6f4c(gp)
or a0,t3,zero
sw t3,0x54(sp)
addiu v0,v0,0x1
jalr t9
_sw v0,0x38(sp)
li v1,0x58
lw v0,0x44(sp)
lw t3,0x54(sp)
lw gp,0x18(sp)
sb v1,0x0(v0)
lw v0,0x28(sp)
addiu s7,s7,0x1
lw v0,0x4(v0)
slt v1,v0,s7
bne v1,zero,0x000b2514
_lw v1,0x64(sp)
beq v1,zero,0x000b252c
_li a0,-0x1
bne v0,a0,0x000b23ec
_lw v0,0x30(sp)
sltu v0,v0,s0
beq v0,zero,0x000b252c
_lw v0,0x28(sp)
addiu v0,v0,0x8
sw v0,0x28(sp)
lw v0,0x30(sp)
addiu v0,v0,0x1
b 0x000b23e4
_sw v0,0x30(sp)
lw v0,0x30(sp)
sltu v0,v0,s0
beq v0,zero,0x000b252c
_nop
bne v1,zero,0x000b24fc
_lw v0,0x28(sp)
lw a0,0x0(s4)
lw v0,0x14(a0)
lw v1,0x18(a0)
sltu v1,v0,v1
beq v1,zero,0x000b22bc
_addiu v1,v0,0x1
sw v1,0x14(a0)
li v1,0xa
b 0x000b22cc
_sb v1,0x0(v0)
addiu v1,v0,0x1
sw v1,0x14(a0)
sb s3,0x0(v0)
b 0x000b2494
_lw a0,0x0(s4)
bne t1,s6,0x000b2240
_addiu t2,t2,0x1
lw a1,0x48(sp)
addiu s7,s7,0x8
bne a1,s7,0x000b222c
_nop
b 0x000b22b4
_sltu v1,v0,v1
addiu v1,v0,0x1
addiu s6,s6,0x1
sw v1,0x14(a0)
sb a1,0x0(v0)
lw a0,0x0(s4)
lw a1,0x4(s7)
slt a1,a1,s6
lw v0,0x14(a0)
bne a1,zero,0x000b22a0
_lw v1,0x18(a0)
b 0x000b2568
_nop
li v0,0x1
b 0x000b21b8
_sw v0,0x3c(sp)
lw a0,-0x7fa8(gp)
addiu s1,s1,-0x4
addiu a0,a0,-0x1308
b 0x000b2148
_sw a0,0x0(s1)
lw t9,-0x7d68(gp)
jalr t9
_or a0,v0,zero
beq v0,zero,0x000b20bc
_lw gp,0x18(sp)
lw a0,0x60(sp)
beq a0,zero,0x000b20c8
_addiu s6,v0,-0x1
lbu v0,0x0(a0)
lui v1,0x7fff
beq v0,zero,0x000b20cc
_ori s5,v1,0xffff
lw t9,-0x7d68(gp)
jalr t9
_ori s5,s7,0xfffe
beq v0,zero,0x000b2620
_lw gp,0x18(sp)
addiu s5,v0,-0x1
bne s6,s5,0x000b20d0
_lw t9,-0x7d98(gp)
b 0x000b20d0
_li s5,-0x1
beq v0,zero,0x000b204c
_li s3,0x9
lw a1,-0x7fa8(gp)
lw a0,-0x7fa8(gp)
lw t9,-0x7f6c(gp)
addiu a1,a1,0x727f
jalr t9
_addiu a0,a0,-0x4ee0
andi v1,v0,0x4
bne v1,zero,0x000b204c
_andi v0,v0,0x10
bne v0,zero,0x000b2638
_lw a1,-0x7fa8(gp)
lw a0,-0x7fa8(gp)
lw t9,-0x7f6c(gp)
addiu a1,a1,0x727f
jalr t9
_addiu a0,a0,-0x4eb0
andi v1,v0,0x4
bne v1,zero,0x000b204c
_andi v0,v0,0x10
bne v0,zero,0x000b2638
_li v0,0x9
beq s3,v0,0x000b204c
_lw a1,-0x7fa8(gp)
lw a0,-0x7fa8(gp)
lw t9,-0x7f6c(gp)
addiu a1,a1,0x727f
jalr t9
_addiu a0,a0,-0x4eb0
lui gp,0x8
addiu gp,gp,-0x558
addu gp,gp,t9
addiu sp,sp,-0x180
lw a2,-0x7fa8(gp)
lw t9,-0x7e68(gp)
addiu v0,sp,0x30
sw s5,0x170(sp)
addiu a2,a2,0x72ba
lw s5,-0x7004(gp)
sw s0,0x15c(sp)
or s0,a1,zero
sw gp,0x20(sp)
or a0,s0,zero
sw s2,0x164(sp)
lw v1,0x0(s5)
lw a1,-0x7fc4(gp)
sw v0,0x1c(sp)
addiu v0,sp,0x38
sw s1,0x160(sp)
sw v0,0x18(sp)
addiu v0,sp,0x34
addiu a1,a1,-0x1730
sw v1,0x154(sp)
sw v0,0x14(sp)
addiu v0,sp,0x2c
sw ra,0x17c(sp)
sw s7,0x178(sp)
or a3,v0,zero
sw s6,0x174(sp)
sw s4,0x16c(sp)
sw s3,0x168(sp)
sw v0,0x10(sp)
jalr t9
_sw zero,0x38(sp)
lw gp,0x20(sp)
or s1,v0,zero
andi v0,v0,0x4
lw v1,-0x7064(gp)
beq v0,zero,0x000b2760
_lw s2,0x0(v1)
lw a0,-0x7fa8(gp)
lw t9,-0x7374(gp)
jalr t9
_addiu a0,a0,-0x4e48
lw gp,0x20(sp)
andi v0,s1,0x20
bne v0,zero,0x000b2b9c
_li s4,-0x1
sll a1,s2,0x2
addu a1,s0,a1
lw s0,0x0(a1)
beq s0,zero,0x000b2834
_andi v0,s1,0xa
lbu a0,0x0(s0)
li v1,0x2b
bne a0,v1,0x000b2a78
_nop
addiu s0,s0,0x1
lw s2,0x4(a1)
bne v0,zero,0x000b2b34
_addiu s3,a1,0x4
ori s1,s1,0x2
bne s2,zero,0x000b2a90
_sw s2,0x2c(sp)
andi v0,s1,0x10
beq v0,zero,0x000b2850
_lw t9,-0x7024(gp)
lw t9,-0x7800(gp)
addiu a1,sp,0x70
lw a0,0x34(sp)
jalr t9
_addiu s3,sp,0x3c
lw v0,0xb8(sp)
lw gp,0x20(sp)
sw v0,0x3c(sp)
lw t9,-0x70cc(gp)
addiu s2,sp,0x44
or a0,s3,zero
jalr t9
_or a1,s2,zero
lw a0,0x2c(sp)
beq a0,zero,0x000b28d0
_lw gp,0x20(sp)
andi v0,s1,0x40
sw zero,0x44(sp)
sw zero,0x48(sp)
beq v0,zero,0x000b2864
_sw zero,0x4c(sp)
lw t9,-0x70b0(gp)
or a2,s2,zero
jalr t9
_lw a1,0x30(sp)
bne v0,zero,0x000b2874
_lw gp,0x20(sp)
lw a0,-0x7e84(gp)
lw t9,-0x7f6c(gp)
jalr t9
_lw a1,0x2c(sp)
bne v0,zero,0x000b27b0
_andi v0,s1,0x10
ori s1,s1,0x2
andi v0,s1,0x10
bne v0,zero,0x000b27b8
_sw zero,0x2c(sp)
lw t9,-0x7024(gp)
addiu s3,sp,0x3c
jalr t9
_or a0,s3,zero
b 0x000b27d8
_lw gp,0x20(sp)
lw t9,-0x762c(gp)
jalr t9
_or a1,s2,zero
lw gp,0x20(sp)
lw a0,0x2c(sp)
li v0,0x40
lbu v1,0x0(a0)
beq v1,v0,0x000b288c
_li v0,-0x1
sw v0,0x64(sp)
lw t9,-0x7628(gp)
jalr t9
_or a1,s2,zero
andi v1,s1,0x2
lw gp,0x20(sp)
beq v1,zero,0x000b28d0
_sw v0,0x3c(sp)
lw t9,-0x73a0(gp)
jalr t9
_or a0,s3,zero
bgez v0,0x000b28d0
_lw gp,0x20(sp)
lw a0,-0x7fa8(gp)
lw t9,-0x7f18(gp)
jalr t9
_addiu a0,a0,-0x4e34
lw gp,0x20(sp)
bne s0,zero,0x000b29c0
_li v0,-0x1
beq s4,v0,0x000b2930
_lw v1,-0x7fa8(gp)
sll v0,s4,0x1
addiu s0,sp,0x114
addu v0,v0,s4
addiu a0,v1,-0x4e24
lw t0,-0x4e24(v1)
addiu v1,v0,0x8
lw a3,0x4(a0)
lw a2,0x8(a0)
lw a1,0xc(a0)
lhu a0,0x10(a0)
sw t0,0x114(sp)
sw a3,0x4(s0)
sw a2,0x8(s0)
sw a1,0xc(s0)
beq s4,zero,0x000b29b4
_sh a0,0x10(s0)
or a0,v1,zero
addiu a1,v0,0x9
b 0x000b2988
_addiu v1,v0,0xa
andi v0,s1,0x1
beq v0,zero,0x000b2a20
_lw a0,-0x7fa8(gp)
addiu s0,sp,0x114
li v1,0x18
li a1,0x17
addiu v0,a0,-0x4e10
lw t3,-0x4e10(a0)
li a0,0x16
lw t2,0x4(v0)
lw t1,0x8(v0)
lw t0,0xc(v0)
lw a3,0x10(v0)
lhu a2,0x14(v0)
lbu v0,0x16(v0)
sw t3,0x114(sp)
sw t2,0x4(s0)
sw t1,0x8(s0)
sw t0,0xc(s0)
sw a3,0x10(s0)
sh a2,0x14(s0)
sb v0,0x16(s0)
li a2,0x5a
li v0,0x7a
andi s1,s1,0x4
movn v0,a2,s1
or s1,v0,zero
addiu v0,sp,0x158
addu a0,v0,a0
addu a1,v0,a1
li v0,0x25
sb v0,-0x44(a0)
sb s1,-0x44(a1)
addiu v0,sp,0x158
addu v1,v0,v1
sb zero,-0x44(v1)
lbu v0,0x0(s0)
bne v0,zero,0x000b2a28
_lw v0,-0x7e0c(gp)
sb zero,0x0(v0)
lw t9,-0x719c(gp)
lw a0,-0x7e0c(gp)
jalr t9
_nop
or v0,zero,zero
lw a0,0x154(sp)
lw v1,0x0(s5)
bne a0,v1,0x000b2a6c
_lw gp,0x20(sp)
lw ra,0x17c(sp)
lw s7,0x178(sp)
lw s6,0x174(sp)
lw s5,0x170(sp)
lw s4,0x16c(sp)
lw s3,0x168(sp)
lw s2,0x164(sp)
lw s1,0x160(sp)
lw s0,0x15c(sp)
jr ra
_addiu sp,sp,0x180
lw s0,-0x7fa8(gp)
addiu s0,s0,-0x4e74
lw a1,-0x7fa8(gp)
or a0,s0,zero
lw t9,-0x7f60(gp)
jalr t9
_addiu a1,a1,-0x4df8
beq v0,zero,0x000b2a4c
_lw gp,0x20(sp)
lw s0,-0x7fa8(gp)
addiu s0,s0,-0x4e5c
lw t9,-0x71dc(gp)
li a1,0x400
lw a0,-0x7e0c(gp)
or a3,s2,zero
jalr t9
_or a2,s0,zero
b 0x000b29d0
_lw gp,0x20(sp)
lw t9,-0x7088(gp)
jalr t9
_nop
bne v0,zero,0x000b2b3c
_or s2,s0,zero
sw s0,0x2c(sp)
or s0,zero,zero
ori s1,s1,0x2
or s3,a1,zero
lw a1,-0x7fa8(gp)
or a0,s2,zero
lw t9,-0x74d8(gp)
jalr t9
_addiu a1,a1,-0x4e40
addu a0,s2,v0
lbu v1,0x0(a0)
bne v1,zero,0x000b2b48
_lw gp,0x20(sp)
addiu s6,v0,-0x8
sltiu v0,s6,0x5
bne v0,zero,0x000b2ad4
_andi v0,s6,0x1
lw a0,-0x7e84(gp)
lw t9,-0x7f6c(gp)
jalr t9
_or a1,s2,zero
bne v0,zero,0x000b2ac8
_lw a0,-0x7e84(gp)
beq s6,zero,0x000b2b30
_lw t9,-0x71c0(gp)
addiu s7,sp,0x114
li a3,0x4
addiu a1,s2,0x8
or a2,s6,zero
jalr t9
_or a0,s7,zero
li a2,0x8
lw gp,0x20(sp)
addu a0,s2,s6
lw t9,-0x6fdc(gp)
jalr t9
_or a1,s2,zero
or a2,s6,zero
lw gp,0x20(sp)
or a1,s7,zero
lw t9,-0x7000(gp)
jalr t9
_lw a0,0x2c(sp)
lw gp,0x20(sp)
lw s2,0x4(s3)
beq s2,zero,0x000b27b0
_andi v0,s1,0x10
lw t9,-0x7f74(gp)
jalr t9
_nop
li a1,0x2e
bne v1,a1,0x000b2b30
_nop
lbu v1,0x1(a0)
addiu v1,v1,-0x30
sltiu v1,v1,0xa
beq v1,zero,0x000b2b30
_nop
lbu v1,0x2(a0)
addiu v1,v1,-0x30
sltiu v1,v1,0xa
beq v1,zero,0x000b2b30
_nop
lbu v1,0x3(a0)
bne v1,zero,0x000b2b30
_addiu s6,v0,-0x8
sltiu v0,s6,0x5
beq v0,zero,0x000b2ac4
_andi v0,s6,0x1
b 0x000b2ad4
_nop
lw a1,0x38(sp)
beq a1,zero,0x000b2bcc
_lw t9,-0x7c44(gp)
lw a0,-0x7fa8(gp)
jalr t9
_addiu a0,a0,0x729e
lw gp,0x20(sp)
bgez v0,0x000b276c
_or s4,v0,zero
lw t9,-0x7f74(gp)
jalr t9
_nop
b 0x000b276c
_or s4,zero,zero
(translation_unit "undefined4 FUN_000b1f74(undefined4 param_1,int param_2)\n\n{\n  undefined1 uVar1;\n  bool bVar2;\n  undefined *puVar3;\n  uint uVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  char *pcVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  int iVar12;\n  uint uVar13;\n  uint uVar14;\n  undefined1 *puVar15;\n  int iVar16;\n  byte *pbVar17;\n  undefined4 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  int *piVar21;\n  undefined4 *puVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  int *piVar25;\n  uint uVar26;\n  int iVar27;\n  int *piVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined8 uVar31;\n  byte *local_1ec;\n  undefined4 local_1e8;\n  undefined4 local_1e4;\n  int local_1e0;\n  undefined4 local_1dc [2];\n  undefined4 local_1d4;\n  undefined4 local_1d0;\n  undefined4 local_1cc;\n  undefined4 local_1b4;\n  undefined1 auStack_1a8 [72];\n  undefined4 local_160;\n  undefined4 local_104;\n  undefined4 local_100;\n  undefined4 local_fc;\n  undefined4 *local_f8;\n  undefined4 local_f4;\n  undefined2 local_f0;\n  undefined1 local_ee;\n  byte *local_c4;\n  undefined4 uStack_c0;\n  int local_74;\n  int *local_70;\n  uint local_68;\n  int local_60;\n  undefined4 local_5c;\n  undefined1 auStack_3c [4];\n  byte *local_38;\n  int local_34;\n  undefined1 local_30;\n  undefined1 local_2f;\n  undefined4 local_2c;\n  \n  local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;\n  uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);\n  if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }\n  if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }\n  if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }\nLAB_000b204c:\n  uVar4 = 0;\n  piVar21 = (int *)0x0;\n  local_74 = *(int *)PTR_optind_0012b0ec;\n  puVar5 = PTR_FUN_0012a1a8 + -0x6a44;\n  puVar6 = PTR_FUN_0012a1a8 + -0x1308;\n  piVar23 = (int *)PTR_FUN_0012a1a8;\n  do {\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  } while( true );\n}\n\n" (function_definition "undefined4 FUN_000b1f74(undefined4 param_1,int param_2)\n\n{\n  undefined1 uVar1;\n  bool bVar2;\n  undefined *puVar3;\n  uint uVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  char *pcVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  int iVar12;\n  uint uVar13;\n  uint uVar14;\n  undefined1 *puVar15;\n  int iVar16;\n  byte *pbVar17;\n  undefined4 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  int *piVar21;\n  undefined4 *puVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  int *piVar25;\n  uint uVar26;\n  int iVar27;\n  int *piVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined8 uVar31;\n  byte *local_1ec;\n  undefined4 local_1e8;\n  undefined4 local_1e4;\n  int local_1e0;\n  undefined4 local_1dc [2];\n  undefined4 local_1d4;\n  undefined4 local_1d0;\n  undefined4 local_1cc;\n  undefined4 local_1b4;\n  undefined1 auStack_1a8 [72];\n  undefined4 local_160;\n  undefined4 local_104;\n  undefined4 local_100;\n  undefined4 local_fc;\n  undefined4 *local_f8;\n  undefined4 local_f4;\n  undefined2 local_f0;\n  undefined1 local_ee;\n  byte *local_c4;\n  undefined4 uStack_c0;\n  int local_74;\n  int *local_70;\n  uint local_68;\n  int local_60;\n  undefined4 local_5c;\n  undefined1 auStack_3c [4];\n  byte *local_38;\n  int local_34;\n  undefined1 local_30;\n  undefined1 local_2f;\n  undefined4 local_2c;\n  \n  local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;\n  uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);\n  if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }\n  if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }\n  if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }\nLAB_000b204c:\n  uVar4 = 0;\n  piVar21 = (int *)0x0;\n  local_74 = *(int *)PTR_optind_0012b0ec;\n  puVar5 = PTR_FUN_0012a1a8 + -0x6a44;\n  puVar6 = PTR_FUN_0012a1a8 + -0x1308;\n  piVar23 = (int *)PTR_FUN_0012a1a8;\n  do {\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  } while( true );\n}" type_identifier (function_declarator "FUN_000b1f74(undefined4 param_1,int param_2)" identifier (parameter_list "(undefined4 param_1,int param_2)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  undefined1 uVar1;\n  bool bVar2;\n  undefined *puVar3;\n  uint uVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  char *pcVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  int iVar12;\n  uint uVar13;\n  uint uVar14;\n  undefined1 *puVar15;\n  int iVar16;\n  byte *pbVar17;\n  undefined4 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  int *piVar21;\n  undefined4 *puVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  int *piVar25;\n  uint uVar26;\n  int iVar27;\n  int *piVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined8 uVar31;\n  byte *local_1ec;\n  undefined4 local_1e8;\n  undefined4 local_1e4;\n  int local_1e0;\n  undefined4 local_1dc [2];\n  undefined4 local_1d4;\n  undefined4 local_1d0;\n  undefined4 local_1cc;\n  undefined4 local_1b4;\n  undefined1 auStack_1a8 [72];\n  undefined4 local_160;\n  undefined4 local_104;\n  undefined4 local_100;\n  undefined4 local_fc;\n  undefined4 *local_f8;\n  undefined4 local_f4;\n  undefined2 local_f0;\n  undefined1 local_ee;\n  byte *local_c4;\n  undefined4 uStack_c0;\n  int local_74;\n  int *local_70;\n  uint local_68;\n  int local_60;\n  undefined4 local_5c;\n  undefined1 auStack_3c [4];\n  byte *local_38;\n  int local_34;\n  undefined1 local_30;\n  undefined1 local_2f;\n  undefined4 local_2c;\n  \n  local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;\n  uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);\n  if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }\n  if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }\n  if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }\nLAB_000b204c:\n  uVar4 = 0;\n  piVar21 = (int *)0x0;\n  local_74 = *(int *)PTR_optind_0012b0ec;\n  puVar5 = PTR_FUN_0012a1a8 + -0x6a44;\n  puVar6 = PTR_FUN_0012a1a8 + -0x1308;\n  piVar23 = (int *)PTR_FUN_0012a1a8;\n  do {\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  } while( true );\n}" { (declaration "undefined1 uVar1;" type_identifier identifier ;) (declaration "bool bVar2;" primitive_type identifier ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined1 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "uint uVar14;" type_identifier identifier ;) (declaration "undefined1 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "byte *pbVar17;" type_identifier (pointer_declarator "*pbVar17" * identifier) ;) (declaration "undefined4 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "byte *pbVar19;" type_identifier (pointer_declarator "*pbVar19" * identifier) ;) (declaration "byte *pbVar20;" type_identifier (pointer_declarator "*pbVar20" * identifier) ;) (declaration "int *piVar21;" primitive_type (pointer_declarator "*piVar21" * identifier) ;) (declaration "undefined4 *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "int *piVar23;" primitive_type (pointer_declarator "*piVar23" * identifier) ;) (declaration "undefined4 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "int *piVar25;" primitive_type (pointer_declarator "*piVar25" * identifier) ;) (declaration "uint uVar26;" type_identifier identifier ;) (declaration "int iVar27;" primitive_type identifier ;) (declaration "int *piVar28;" primitive_type (pointer_declarator "*piVar28" * identifier) ;) (declaration "int iVar29;" primitive_type identifier ;) (declaration "code *pcVar30;" type_identifier (pointer_declarator "*pcVar30" * identifier) ;) (declaration "undefined8 uVar31;" type_identifier identifier ;) (declaration "byte *local_1ec;" type_identifier (pointer_declarator "*local_1ec" * identifier) ;) (declaration "undefined4 local_1e8;" type_identifier identifier ;) (declaration "undefined4 local_1e4;" type_identifier identifier ;) (declaration "int local_1e0;" primitive_type identifier ;) (declaration "undefined4 local_1dc [2];" type_identifier (array_declarator "local_1dc [2]" identifier [ number_literal ]) ;) (declaration "undefined4 local_1d4;" type_identifier identifier ;) (declaration "undefined4 local_1d0;" type_identifier identifier ;) (declaration "undefined4 local_1cc;" type_identifier identifier ;) (declaration "undefined4 local_1b4;" type_identifier identifier ;) (declaration "undefined1 auStack_1a8 [72];" type_identifier (array_declarator "auStack_1a8 [72]" identifier [ number_literal ]) ;) (declaration "undefined4 local_160;" type_identifier identifier ;) (declaration "undefined4 local_104;" type_identifier identifier ;) (declaration "undefined4 local_100;" type_identifier identifier ;) (declaration "undefined4 local_fc;" type_identifier identifier ;) (declaration "undefined4 *local_f8;" type_identifier (pointer_declarator "*local_f8" * identifier) ;) (declaration "undefined4 local_f4;" type_identifier identifier ;) (declaration "undefined2 local_f0;" type_identifier identifier ;) (declaration "undefined1 local_ee;" type_identifier identifier ;) (declaration "byte *local_c4;" type_identifier (pointer_declarator "*local_c4" * identifier) ;) (declaration "undefined4 uStack_c0;" type_identifier identifier ;) (declaration "int local_74;" primitive_type identifier ;) (declaration "int *local_70;" primitive_type (pointer_declarator "*local_70" * identifier) ;) (declaration "uint local_68;" type_identifier identifier ;) (declaration "int local_60;" primitive_type identifier ;) (declaration "undefined4 local_5c;" type_identifier identifier ;) (declaration "undefined1 auStack_3c [4];" type_identifier (array_declarator "auStack_3c [4]" identifier [ number_literal ]) ;) (declaration "byte *local_38;" type_identifier (pointer_declarator "*local_38" * identifier) ;) (declaration "int local_34;" primitive_type identifier ;) (declaration "undefined1 local_30;" type_identifier identifier ;) (declaration "undefined1 local_2f;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (expression_statement "local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;" (assignment_expression "local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c" identifier = (pointer_expression "*(undefined4 *)PTR___stack_chk_guard_0012b14c" * (cast_expression "(undefined4 *)PTR___stack_chk_guard_0012b14c" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c)" identifier = (call_expression "(*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a30c)" ( (pointer_expression "*(code *)PTR_FUN_0012a30c" * (cast_expression "(code *)PTR_FUN_0012a30c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c)" ( identifier , (binary_expression "PTR_UINT_0012a18c + -0x1760" identifier + number_literal) , identifier , identifier )))) ;) (if_statement "if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }" if (parenthesized_expression "((uVar4 & 7) == 0)" ( (binary_expression "(uVar4 & 7) == 0" (parenthesized_expression "(uVar4 & 7)" ( (binary_expression "uVar4 & 7" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }" { (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c)" identifier = (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4f3c)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4f3c" identifier + number_literal) )))) ;) })) (if_statement "if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }" if (parenthesized_expression "((uVar4 & 8) != 0)" ( (binary_expression "(uVar4 & 8) != 0" (parenthesized_expression "(uVar4 & 8)" ( (binary_expression "uVar4 & 8" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }" { (expression_statement "puVar22 = (undefined4 *)(uint)*local_38;" (assignment_expression "puVar22 = (undefined4 *)(uint)*local_38" identifier = (binary_expression "(undefined4 *)(uint)*local_38" (cast_expression "(undefined4 *)(uint)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uint)" ( identifier ))) * identifier)) ;) (if_statement "if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;" if (parenthesized_expression "(puVar22 == (undefined4 *)0x0)" ( (binary_expression "puVar22 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b2650;" goto statement_identifier ;)) (if_statement "if (local_38[1] == 0) goto LAB_000b2678;" if (parenthesized_expression "(local_38[1] == 0)" ( (binary_expression "local_38[1] == 0" (subscript_expression "local_38[1]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_000b2678;" goto statement_identifier ;)) (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c)" identifier = (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4f0c)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4f0c" identifier + number_literal) )))) ;) })) (if_statement "if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }" if (parenthesized_expression "((uVar4 & 4) == 0)" ( (binary_expression "(uVar4 & 4) == 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }" { (expression_statement "puVar22 = (undefined4 *)0x9;" (assignment_expression "puVar22 = (undefined4 *)0x9" identifier = (cast_expression "(undefined4 *)0x9" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }" if (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }" { (do_statement "do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);" do (compound_statement "{\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      }" { (do_statement "do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);" do (compound_statement "{\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        }" { (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f)" identifier = (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4ee0" identifier + number_literal) , (binary_expression "PTR_FUN_0012a1a8 + 0x727f" identifier + number_literal) )))) ;) (labeled_statement "LAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;" statement_identifier : (if_statement "if ((uVar4 & 4) != 0) goto LAB_000b204c;" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000b204c;" goto statement_identifier ;))) }) while (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) ;) (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f)" identifier = (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4eb0" identifier + number_literal) , (binary_expression "PTR_FUN_0012a1a8 + 0x727f" identifier + number_literal) )))) ;) (labeled_statement "LAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;" statement_identifier : (if_statement "if ((uVar4 & 4) != 0) goto LAB_000b204c;" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000b204c;" goto statement_identifier ;))) }) while (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) ;) (if_statement "if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }" if (parenthesized_expression "(puVar22 != (undefined4 *)0x9)" ( (binary_expression "puVar22 != (undefined4 *)0x9" identifier != (cast_expression "(undefined4 *)0x9" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }" { (expression_statement "puVar6 = PTR_FUN_0012a1a8 + 0x727f;" (assignment_expression "puVar6 = PTR_FUN_0012a1a8 + 0x727f" identifier = (binary_expression "PTR_FUN_0012a1a8 + 0x727f" identifier + number_literal)) ;) (expression_statement "puVar5 = PTR_FUN_0012a1e4;" (assignment_expression "puVar5 = PTR_FUN_0012a1e4" identifier = identifier) ;) (expression_statement "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);" (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4eb0)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4eb0" identifier + number_literal) ))) ;) (expression_statement "puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);" (assignment_expression "puVar24 = *(undefined4 **)(puVar5 + 0x78aa4)" identifier = (pointer_expression "*(undefined4 **)(puVar5 + 0x78aa4)" * (cast_expression "(undefined4 **)(puVar5 + 0x78aa4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78aa4)" ( (binary_expression "puVar5 + 0x78aa4" identifier + number_literal) ))))) ;) (expression_statement "local_c4 = (byte *)*puVar24;" (assignment_expression "local_c4 = (byte *)*puVar24" identifier = (cast_expression "(byte *)*puVar24" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar24" * identifier))) ;) (expression_statement "local_1e0 = 0;" (assignment_expression "local_1e0 = 0" identifier = number_literal) ;) (expression_statement "uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);" (assignment_expression "uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8)" identifier = (call_expression "(**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8)" (parenthesized_expression "(**(code **)(puVar5 + 0x77c40))" ( (pointer_expression "**(code **)(puVar5 + 0x77c40)" * (pointer_expression "*(code **)(puVar5 + 0x77c40)" * (cast_expression "(code **)(puVar5 + 0x77c40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77c40)" ( (binary_expression "puVar5 + 0x77c40" identifier + number_literal) ))))) )) (argument_list "(puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8)" ( identifier , (binary_expression "*(int *)(puVar5 + 0x77ae4) + -0x1730" (pointer_expression "*(int *)(puVar5 + 0x77ae4)" * (cast_expression "(int *)(puVar5 + 0x77ae4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77ae4)" ( (binary_expression "puVar5 + 0x77ae4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar5 + 0x77b00) + 0x72ba" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) , (pointer_expression "&local_1ec" & identifier) , (pointer_expression "&local_1ec" & identifier) , (pointer_expression "&local_1e4" & identifier) , (pointer_expression "&local_1e0" & identifier) , (pointer_expression "&local_1e8" & identifier) )))) ;) (expression_statement "iVar12 = **(int **)(puVar5 + 0x78a44);" (assignment_expression "iVar12 = **(int **)(puVar5 + 0x78a44)" identifier = (pointer_expression "**(int **)(puVar5 + 0x78a44)" * (pointer_expression "*(int **)(puVar5 + 0x78a44)" * (cast_expression "(int **)(puVar5 + 0x78a44)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78a44)" ( (binary_expression "puVar5 + 0x78a44" identifier + number_literal) )))))) ;) (if_statement "if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }" { (expression_statement "(**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);" (call_expression "(**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48)" (parenthesized_expression "(**(code **)(puVar5 + 0x78734))" ( (pointer_expression "**(code **)(puVar5 + 0x78734)" * (pointer_expression "*(code **)(puVar5 + 0x78734)" * (cast_expression "(code **)(puVar5 + 0x78734)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78734)" ( (binary_expression "puVar5 + 0x78734" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar5 + 0x77b00) + -0x4e48)" ( (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e48" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" identifier = number_literal) ;) (if_statement "if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }" if (parenthesized_expression "((uVar4 & 0x20) != 0)" ( (binary_expression "(uVar4 & 0x20) != 0" (parenthesized_expression "(uVar4 & 0x20)" ( (binary_expression "uVar4 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }" { (if_statement "if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }" if (parenthesized_expression "(local_1e0 != 0)" ( (binary_expression "local_1e0 != 0" identifier != number_literal) )) (compound_statement "{\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }" { (expression_statement "iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);" (assignment_expression "iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e)" identifier = (call_expression "(**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e)" (parenthesized_expression "(**(code **)(puVar5 + 0x77e64))" ( (pointer_expression "**(code **)(puVar5 + 0x77e64)" * (pointer_expression "*(code **)(puVar5 + 0x77e64)" * (cast_expression "(code **)(puVar5 + 0x77e64)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77e64)" ( (binary_expression "puVar5 + 0x77e64" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar5 + 0x77b00) + 0x729e)" ( (binary_expression "*(int *)(puVar5 + 0x77b00) + 0x729e" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (-1 < iVar8) goto LAB_000b276c;" if (parenthesized_expression "(-1 < iVar8)" ( (binary_expression "-1 < iVar8" number_literal < identifier) )) (goto_statement "goto LAB_000b276c;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar5 + 0x77b34))();" (call_expression "(**(code **)(puVar5 + 0x77b34))()" (parenthesized_expression "(**(code **)(puVar5 + 0x77b34))" ( (pointer_expression "**(code **)(puVar5 + 0x77b34)" * (pointer_expression "*(code **)(puVar5 + 0x77b34)" * (cast_expression "(code **)(puVar5 + 0x77b34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b34)" ( (binary_expression "puVar5 + 0x77b34" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) })) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" identifier = number_literal) ;) })) (labeled_statement "LAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);" statement_identifier : (expression_statement "puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);" (assignment_expression "puVar18 = (undefined4 *)(puVar6 + iVar12 * 4)" identifier = (cast_expression "(undefined4 *)(puVar6 + iVar12 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + iVar12 * 4)" ( (binary_expression "puVar6 + iVar12 * 4" identifier + (binary_expression "iVar12 * 4" identifier * number_literal)) )))) ;)) (expression_statement "pbVar19 = (byte *)*puVar18;" (assignment_expression "pbVar19 = (byte *)*puVar18" identifier = (cast_expression "(byte *)*puVar18" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar18" * identifier))) ;) (expression_statement "uVar13 = uVar4 & 10;" (assignment_expression "uVar13 = uVar4 & 10" identifier = (binary_expression "uVar4 & 10" identifier & number_literal)) ;) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;) (if_statement "if (pbVar19 == (byte *)0x0) goto LAB_000b2834;" if (parenthesized_expression "(pbVar19 == (byte *)0x0)" ( (binary_expression "pbVar19 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b2834;" goto statement_identifier ;)) (expression_statement "pbVar17 = (byte *)(uint)*pbVar19;" (assignment_expression "pbVar17 = (byte *)(uint)*pbVar19" identifier = (binary_expression "(byte *)(uint)*pbVar19" (cast_expression "(byte *)(uint)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uint)" ( identifier ))) * identifier)) ;) (if_statement "if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;" if (parenthesized_expression "(pbVar17 != &DAT_0000002b)" ( (binary_expression "pbVar17 != &DAT_0000002b" identifier != (pointer_expression "&DAT_0000002b" & identifier)) )) (goto_statement "goto LAB_000b2a78;" goto statement_identifier ;)) (expression_statement "pbVar20 = pbVar19 + 1;" (assignment_expression "pbVar20 = pbVar19 + 1" identifier = (binary_expression "pbVar19 + 1" identifier + number_literal)) ;) (expression_statement "pbVar19 = (byte *)puVar18[1];" (assignment_expression "pbVar19 = (byte *)puVar18[1]" identifier = (cast_expression "(byte *)puVar18[1]" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar18[1]" identifier [ number_literal ]))) ;) (expression_statement "puVar18 = puVar18 + 1;" (assignment_expression "puVar18 = puVar18 + 1" identifier = (binary_expression "puVar18 + 1" identifier + number_literal)) ;) (if_statement "if (uVar13 != 0) goto LAB_000b2b34;" if (parenthesized_expression "(uVar13 != 0)" ( (binary_expression "uVar13 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b2b34;" goto statement_identifier ;)) (expression_statement "uVar26 = uVar4 | 2;" (assignment_expression "uVar26 = uVar4 | 2" identifier = (binary_expression "uVar4 | 2" identifier | number_literal)) ;) (if_statement "if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;" if (parenthesized_expression "(pbVar19 != (byte *)0x0)" ( (binary_expression "pbVar19 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b2a90;" goto statement_identifier ;)) (expression_statement "uVar14 = uVar4 & 0x10;" (assignment_expression "uVar14 = uVar4 & 0x10" identifier = (binary_expression "uVar4 & 0x10" identifier & number_literal)) ;) (expression_statement "local_1ec = pbVar19;" (assignment_expression "local_1ec = pbVar19" identifier = identifier) ;) (labeled_statement "LAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);" statement_identifier : (expression_statement "pcVar30 = *(code **)(puVar5 + 0x78a84);" (assignment_expression "pcVar30 = *(code **)(puVar5 + 0x78a84)" identifier = (pointer_expression "*(code **)(puVar5 + 0x78a84)" * (cast_expression "(code **)(puVar5 + 0x78a84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78a84)" ( (binary_expression "puVar5 + 0x78a84" identifier + number_literal) ))))) ;)) (expression_statement "uVar4 = uVar26;" (assignment_expression "uVar4 = uVar26" identifier = identifier) ;) (if_statement "if (uVar14 == 0) goto LAB_000b2850;" if (parenthesized_expression "(uVar14 == 0)" ( (binary_expression "uVar14 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000b2850;" goto statement_identifier ;)) (labeled_statement "LAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);" statement_identifier : (expression_statement "(**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);" (call_expression "(**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8)" (parenthesized_expression "(**(code **)(puVar5 + 0x782a8))" ( (pointer_expression "**(code **)(puVar5 + 0x782a8)" * (pointer_expression "*(code **)(puVar5 + 0x782a8)" * (cast_expression "(code **)(puVar5 + 0x782a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x782a8)" ( (binary_expression "puVar5 + 0x782a8" identifier + number_literal) ))))) )) (argument_list "(local_1e4,auStack_1a8)" ( identifier , identifier ))) ;)) (expression_statement "local_1dc[0] = local_160;" (assignment_expression "local_1dc[0] = local_160" (subscript_expression "local_1dc[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pbVar19 = pbVar20;" (assignment_expression "pbVar19 = pbVar20" identifier = identifier) ;) (do_statement "do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );" do (compound_statement "{\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        }" { (expression_statement "puVar22 = local_1dc;" (assignment_expression "puVar22 = local_1dc" identifier = identifier) ;) (expression_statement "puVar18 = &local_1d4;" (assignment_expression "puVar18 = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "(**(code **)(puVar5 + 0x789dc))(puVar22);" (call_expression "(**(code **)(puVar5 + 0x789dc))(puVar22)" (parenthesized_expression "(**(code **)(puVar5 + 0x789dc))" ( (pointer_expression "**(code **)(puVar5 + 0x789dc)" * (pointer_expression "*(code **)(puVar5 + 0x789dc)" * (cast_expression "(code **)(puVar5 + 0x789dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x789dc)" ( (binary_expression "puVar5 + 0x789dc" identifier + number_literal) ))))) )) (argument_list "(puVar22)" ( identifier ))) ;) (if_statement "if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }" if (parenthesized_expression "(local_1ec == (byte *)0x0)" ( (binary_expression "local_1ec == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }" { (labeled_statement "LAB_000b28d0:\n            uVar26 = uVar4;" statement_identifier : (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;)) (if_statement "if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" if (parenthesized_expression "(pbVar19 == (byte *)0x0)" ( (binary_expression "pbVar19 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }" { (expression_statement "iVar12 = *(int *)(puVar5 + 0x77b00);" (assignment_expression "iVar12 = *(int *)(puVar5 + 0x77b00)" identifier = (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) ))))) ;) (if_statement "if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }" if (parenthesized_expression "(iVar8 != -1)" ( (binary_expression "iVar8 != -1" identifier != number_literal) )) (compound_statement "{\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }" { (expression_statement "iVar9 = iVar8 * 3;" (assignment_expression "iVar9 = iVar8 * 3" identifier = (binary_expression "iVar8 * 3" identifier * number_literal)) ;) (expression_statement "iVar10 = iVar9 + 8;" (assignment_expression "iVar10 = iVar9 + 8" identifier = (binary_expression "iVar9 + 8" identifier + number_literal)) ;) (expression_statement "puVar18 = *(undefined4 **)(iVar12 + -0x4e18);" (assignment_expression "puVar18 = *(undefined4 **)(iVar12 + -0x4e18)" identifier = (pointer_expression "*(undefined4 **)(iVar12 + -0x4e18)" * (cast_expression "(undefined4 **)(iVar12 + -0x4e18)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar12 + -0x4e18)" ( (binary_expression "iVar12 + -0x4e18" identifier + number_literal) ))))) ;) (expression_statement "local_104 = *(undefined4 *)(iVar12 + -0x4e24);" (assignment_expression "local_104 = *(undefined4 *)(iVar12 + -0x4e24)" identifier = (pointer_expression "*(undefined4 *)(iVar12 + -0x4e24)" * (cast_expression "(undefined4 *)(iVar12 + -0x4e24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -0x4e24)" ( (binary_expression "iVar12 + -0x4e24" identifier + number_literal) ))))) ;) (expression_statement "local_100 = *(undefined4 *)(iVar12 + -20000);" (assignment_expression "local_100 = *(undefined4 *)(iVar12 + -20000)" identifier = (pointer_expression "*(undefined4 *)(iVar12 + -20000)" * (cast_expression "(undefined4 *)(iVar12 + -20000)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -20000)" ( (binary_expression "iVar12 + -20000" identifier + number_literal) ))))) ;) (expression_statement "local_fc = *(undefined4 *)(iVar12 + -0x4e1c);" (assignment_expression "local_fc = *(undefined4 *)(iVar12 + -0x4e1c)" identifier = (pointer_expression "*(undefined4 *)(iVar12 + -0x4e1c)" * (cast_expression "(undefined4 *)(iVar12 + -0x4e1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -0x4e1c)" ( (binary_expression "iVar12 + -0x4e1c" identifier + number_literal) ))))) ;) (expression_statement "local_f8 = puVar18;" (assignment_expression "local_f8 = puVar18" identifier = identifier) ;) (expression_statement "local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);" (assignment_expression "local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_)" identifier = (call_expression "CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_)" identifier (argument_list "(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_)" ( (pointer_expression "*(undefined2 *)(iVar12 + -0x4e14)" * (cast_expression "(undefined2 *)(iVar12 + -0x4e14)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -0x4e14)" ( (binary_expression "iVar12 + -0x4e14" identifier + number_literal) )))) , (field_expression "local_f4._2_2_" identifier . field_identifier) )))) ;) (expression_statement "iVar12 = iVar10;" (assignment_expression "iVar12 = iVar10" identifier = identifier) ;) (if_statement "if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }" { (expression_statement "iVar16 = iVar9 + 9;" (assignment_expression "iVar16 = iVar9 + 9" identifier = (binary_expression "iVar9 + 9" identifier + number_literal)) ;) (expression_statement "iVar12 = iVar9 + 10;" (assignment_expression "iVar12 = iVar9 + 10" identifier = (binary_expression "iVar9 + 10" identifier + number_literal)) ;) (goto_statement "goto LAB_000b2988;" goto statement_identifier ;) })) (labeled_statement "LAB_000b29b4:\n                pbVar19 = (byte *)&local_104;" statement_identifier : (expression_statement "pbVar19 = (byte *)&local_104;" (assignment_expression "pbVar19 = (byte *)&local_104" identifier = (cast_expression "(byte *)&local_104" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_104" & identifier))) ;)) (expression_statement "*(undefined1 *)((int)&local_104 + iVar12) = 0;" (assignment_expression "*(undefined1 *)((int)&local_104 + iVar12) = 0" (pointer_expression "*(undefined1 *)((int)&local_104 + iVar12)" * (cast_expression "(undefined1 *)((int)&local_104 + iVar12)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_104 + iVar12)" ( (binary_expression "(int)&local_104 + iVar12" (cast_expression "(int)&local_104" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_104" & identifier)) + identifier) )))) = number_literal) ;) (goto_statement "goto LAB_000b29c0;" goto statement_identifier ;) })) (expression_statement "iVar9 = *(int *)(puVar5 + 0x77b00);" (assignment_expression "iVar9 = *(int *)(puVar5 + 0x77b00)" identifier = (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) ))))) ;) (if_statement "if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }" if (parenthesized_expression "((uVar4 & 1) != 0)" ( (binary_expression "(uVar4 & 1) != 0" (parenthesized_expression "(uVar4 & 1)" ( (binary_expression "uVar4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }" { (expression_statement "iVar12 = 0x18;" (assignment_expression "iVar12 = 0x18" identifier = number_literal) ;) (expression_statement "iVar16 = 0x17;" (assignment_expression "iVar16 = 0x17" identifier = number_literal) ;) (expression_statement "iVar10 = 0x16;" (assignment_expression "iVar10 = 0x16" identifier = number_literal) ;) (expression_statement "local_104 = *(undefined4 *)(iVar9 + -0x4e10);" (assignment_expression "local_104 = *(undefined4 *)(iVar9 + -0x4e10)" identifier = (pointer_expression "*(undefined4 *)(iVar9 + -0x4e10)" * (cast_expression "(undefined4 *)(iVar9 + -0x4e10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4e10)" ( (binary_expression "iVar9 + -0x4e10" identifier + number_literal) ))))) ;) (expression_statement "local_100 = *(undefined4 *)(iVar9 + -0x4e0c);" (assignment_expression "local_100 = *(undefined4 *)(iVar9 + -0x4e0c)" identifier = (pointer_expression "*(undefined4 *)(iVar9 + -0x4e0c)" * (cast_expression "(undefined4 *)(iVar9 + -0x4e0c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4e0c)" ( (binary_expression "iVar9 + -0x4e0c" identifier + number_literal) ))))) ;) (expression_statement "local_fc = *(undefined4 *)(iVar9 + -0x4e08);" (assignment_expression "local_fc = *(undefined4 *)(iVar9 + -0x4e08)" identifier = (pointer_expression "*(undefined4 *)(iVar9 + -0x4e08)" * (cast_expression "(undefined4 *)(iVar9 + -0x4e08)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4e08)" ( (binary_expression "iVar9 + -0x4e08" identifier + number_literal) ))))) ;) (expression_statement "local_f8 = *(undefined4 **)(iVar9 + -0x4e04);" (assignment_expression "local_f8 = *(undefined4 **)(iVar9 + -0x4e04)" identifier = (pointer_expression "*(undefined4 **)(iVar9 + -0x4e04)" * (cast_expression "(undefined4 **)(iVar9 + -0x4e04)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + -0x4e04)" ( (binary_expression "iVar9 + -0x4e04" identifier + number_literal) ))))) ;) (expression_statement "local_f4 = *(undefined4 *)(iVar9 + -0x4e00);" (assignment_expression "local_f4 = *(undefined4 *)(iVar9 + -0x4e00)" identifier = (pointer_expression "*(undefined4 *)(iVar9 + -0x4e00)" * (cast_expression "(undefined4 *)(iVar9 + -0x4e00)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4e00)" ( (binary_expression "iVar9 + -0x4e00" identifier + number_literal) ))))) ;) (expression_statement "local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);" (assignment_expression "local_f0 = *(undefined2 *)(iVar9 + -0x4dfc)" identifier = (pointer_expression "*(undefined2 *)(iVar9 + -0x4dfc)" * (cast_expression "(undefined2 *)(iVar9 + -0x4dfc)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4dfc)" ( (binary_expression "iVar9 + -0x4dfc" identifier + number_literal) ))))) ;) (expression_statement "local_ee = *(undefined1 *)(iVar9 + -0x4dfa);" (assignment_expression "local_ee = *(undefined1 *)(iVar9 + -0x4dfa)" identifier = (pointer_expression "*(undefined1 *)(iVar9 + -0x4dfa)" * (cast_expression "(undefined1 *)(iVar9 + -0x4dfa)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4dfa)" ( (binary_expression "iVar9 + -0x4dfa" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000b2988:\n                uVar26 = 0x7a;" statement_identifier : (expression_statement "uVar26 = 0x7a;" (assignment_expression "uVar26 = 0x7a" identifier = number_literal) ;)) (if_statement "if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                  uVar26 = 0x5a;\n                }" { (expression_statement "uVar26 = 0x5a;" (assignment_expression "uVar26 = 0x5a" identifier = number_literal) ;) })) (expression_statement "puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);" (assignment_expression "puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16)" identifier = (cast_expression "(undefined4 *)((int)&uStack_c0 + iVar16)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&uStack_c0 + iVar16)" ( (binary_expression "(int)&uStack_c0 + iVar16" (cast_expression "(int)&uStack_c0" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&uStack_c0" & identifier)) + identifier) )))) ;) (expression_statement "*(undefined1 *)((int)&local_104 + iVar10) = 0x25;" (assignment_expression "*(undefined1 *)((int)&local_104 + iVar10) = 0x25" (pointer_expression "*(undefined1 *)((int)&local_104 + iVar10)" * (cast_expression "(undefined1 *)((int)&local_104 + iVar10)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_104 + iVar10)" ( (binary_expression "(int)&local_104 + iVar10" (cast_expression "(int)&local_104" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_104" & identifier)) + identifier) )))) = number_literal) ;) (expression_statement "*(char *)((int)&local_104 + iVar16) = (char)uVar26;" (assignment_expression "*(char *)((int)&local_104 + iVar16) = (char)uVar26" (pointer_expression "*(char *)((int)&local_104 + iVar16)" * (cast_expression "(char *)((int)&local_104 + iVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_104 + iVar16)" ( (binary_expression "(int)&local_104 + iVar16" (cast_expression "(int)&local_104" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_104" & identifier)) + identifier) )))) = (cast_expression "(char)uVar26" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (goto_statement "goto LAB_000b29b4;" goto statement_identifier ;) })) (expression_statement "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);" (assignment_expression "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74)" identifier = (cast_expression "(byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x77b00) + -0x4e74)" ( (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e74" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" else (compound_statement "{\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" { (labeled_statement "LAB_000b29c0:\n              uVar4 = uVar26;" statement_identifier : (expression_statement "uVar4 = uVar26;" (assignment_expression "uVar4 = uVar26" identifier = identifier) ;)) (if_statement "if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }" if (parenthesized_expression "(*pbVar19 == 0)" ( (binary_expression "*pbVar19 == 0" (pointer_expression "*pbVar19" * identifier) == number_literal) )) (compound_statement "{\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }" { (expression_statement "**(undefined1 **)(puVar5 + 0x77c9c) = 0;" (assignment_expression "**(undefined1 **)(puVar5 + 0x77c9c) = 0" (pointer_expression "**(undefined1 **)(puVar5 + 0x77c9c)" * (pointer_expression "*(undefined1 **)(puVar5 + 0x77c9c)" * (cast_expression "(undefined1 **)(puVar5 + 0x77c9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77c9c)" ( (binary_expression "puVar5 + 0x77c9c" identifier + number_literal) ))))) = number_literal) ;) (goto_statement "goto LAB_000b29d0;" goto statement_identifier ;) })) }))) (expression_statement "iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8)" identifier = (call_expression "(**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b48))" ( (pointer_expression "**(code **)(puVar5 + 0x77b48)" * (pointer_expression "*(code **)(puVar5 + 0x77b48)" * (cast_expression "(code **)(puVar5 + 0x77b48)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b48)" ( (binary_expression "puVar5 + 0x77b48" identifier + number_literal) ))))) )) (argument_list "(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8)" ( identifier , (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4df8" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }" { (expression_statement "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);" (assignment_expression "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c)" identifier = (cast_expression "(byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x77b00) + -0x4e5c)" ( (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e5c" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) })) (expression_statement "puVar18 = (undefined4 *)0x400;" (assignment_expression "puVar18 = (undefined4 *)0x400" identifier = (cast_expression "(undefined4 *)0x400" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);" (call_expression "(**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4)" (parenthesized_expression "(**(code **)(puVar5 + 0x788cc))" ( (pointer_expression "**(code **)(puVar5 + 0x788cc)" * (pointer_expression "*(code **)(puVar5 + 0x788cc)" * (cast_expression "(code **)(puVar5 + 0x788cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x788cc)" ( (binary_expression "puVar5 + 0x788cc" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4)" ( (pointer_expression "*(undefined4 *)(puVar5 + 0x77c9c)" * (cast_expression "(undefined4 *)(puVar5 + 0x77c9c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77c9c)" ( (binary_expression "puVar5 + 0x77c9c" identifier + number_literal) )))) , number_literal , identifier , (pointer_expression "&local_1d4" & identifier) ))) ;) (labeled_statement "LAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));" statement_identifier : (expression_statement "(**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));" (call_expression "(**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c))" (parenthesized_expression "(**(code **)(puVar5 + 0x7890c))" ( (pointer_expression "**(code **)(puVar5 + 0x7890c)" * (pointer_expression "*(code **)(puVar5 + 0x7890c)" * (cast_expression "(code **)(puVar5 + 0x7890c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x7890c)" ( (binary_expression "puVar5 + 0x7890c" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar5 + 0x77c9c))" ( (pointer_expression "*(undefined4 *)(puVar5 + 0x77c9c)" * (cast_expression "(undefined4 *)(puVar5 + 0x77c9c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77c9c)" ( (binary_expression "puVar5 + 0x77c9c" identifier + number_literal) )))) ))) ;)) (if_statement "if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }" if (parenthesized_expression "(local_c4 == (byte *)*puVar24)" ( (binary_expression "local_c4 == (byte *)*puVar24" identifier == (cast_expression "(byte *)*puVar24" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar24" * identifier))) )) (compound_statement "{\n              return 0;\n            }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "pbVar17 = local_c4;" (assignment_expression "pbVar17 = local_c4" identifier = identifier) ;) (expression_statement "uVar13 = (**(code **)(puVar5 + 0x78a20))();" (assignment_expression "uVar13 = (**(code **)(puVar5 + 0x78a20))()" identifier = (call_expression "(**(code **)(puVar5 + 0x78a20))()" (parenthesized_expression "(**(code **)(puVar5 + 0x78a20))" ( (pointer_expression "**(code **)(puVar5 + 0x78a20)" * (pointer_expression "*(code **)(puVar5 + 0x78a20)" * (cast_expression "(code **)(puVar5 + 0x78a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78a20)" ( (binary_expression "puVar5 + 0x78a20" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (labeled_statement "LAB_000b2a78:\n            pbVar20 = pbVar19;" statement_identifier : (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;)) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;) (if_statement "if (uVar13 != 0) goto LAB_000b2b3c;" if (parenthesized_expression "(uVar13 != 0)" ( (binary_expression "uVar13 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b2b3c;" goto statement_identifier ;)) (expression_statement "pbVar20 = (byte *)0x0;" (assignment_expression "pbVar20 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar26 = uVar4 | 2;" (assignment_expression "uVar26 = uVar4 | 2" identifier = (binary_expression "uVar4 | 2" identifier | number_literal)) ;) (labeled_statement "LAB_000b2a90:\n            local_1ec = pbVar19;" statement_identifier : (expression_statement "local_1ec = pbVar19;" (assignment_expression "local_1ec = pbVar19" identifier = identifier) ;)) (expression_statement "iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40)" identifier = (call_expression "(**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40)" (parenthesized_expression "(**(code **)(puVar5 + 0x785d0))" ( (pointer_expression "**(code **)(puVar5 + 0x785d0)" * (pointer_expression "*(code **)(puVar5 + 0x785d0)" * (cast_expression "(code **)(puVar5 + 0x785d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x785d0)" ( (binary_expression "puVar5 + 0x785d0" identifier + number_literal) ))))) )) (argument_list "(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40)" ( identifier , (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e40" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pbVar17 = pbVar19 + iVar12;" (assignment_expression "pbVar17 = pbVar19 + iVar12" identifier = (binary_expression "pbVar19 + iVar12" identifier + identifier)) ;) (expression_statement "uVar31 = CONCAT44(iVar12,(uint)*pbVar17);" (assignment_expression "uVar31 = CONCAT44(iVar12,(uint)*pbVar17)" identifier = (call_expression "CONCAT44(iVar12,(uint)*pbVar17)" identifier (argument_list "(iVar12,(uint)*pbVar17)" ( identifier , (binary_expression "(uint)*pbVar17" (parenthesized_expression "(uint)" ( identifier )) * identifier) )))) ;) (expression_statement "puVar22 = puVar18;" (assignment_expression "puVar22 = puVar18" identifier = identifier) ;) (if_statement "if (*pbVar17 != 0) goto LAB_000b2b48;" if (parenthesized_expression "(*pbVar17 != 0)" ( (binary_expression "*pbVar17 != 0" (pointer_expression "*pbVar17" * identifier) != number_literal) )) (goto_statement "goto LAB_000b2b48;" goto statement_identifier ;)) (expression_statement "uVar13 = iVar12 - 8;" (assignment_expression "uVar13 = iVar12 - 8" identifier = (binary_expression "iVar12 - 8" identifier - number_literal)) ;) (expression_statement "uVar4 = uVar13 & 1;" (assignment_expression "uVar4 = uVar13 & 1" identifier = (binary_expression "uVar13 & 1" identifier & number_literal)) ;) (if_statement "if (uVar13 < 5) goto LAB_000b2ad4;" if (parenthesized_expression "(uVar13 < 5)" ( (binary_expression "uVar13 < 5" identifier < number_literal) )) (goto_statement "goto LAB_000b2ad4;" goto statement_identifier ;)) (labeled_statement "LAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);" statement_identifier : (expression_statement "pbVar17 = *(byte **)(puVar5 + 0x77c24);" (assignment_expression "pbVar17 = *(byte **)(puVar5 + 0x77c24)" identifier = (pointer_expression "*(byte **)(puVar5 + 0x77c24)" * (cast_expression "(byte **)(puVar5 + 0x77c24)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77c24)" ( (binary_expression "puVar5 + 0x77c24" identifier + number_literal) ))))) ;)) (do_statement "do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );" do (compound_statement "{\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            }" { (expression_statement "uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);" (assignment_expression "uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19)" identifier = (call_expression "(**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b3c))" ( (pointer_expression "**(code **)(puVar5 + 0x77b3c)" * (pointer_expression "*(code **)(puVar5 + 0x77b3c)" * (cast_expression "(code **)(puVar5 + 0x77b3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b3c)" ( (binary_expression "puVar5 + 0x77b3c" identifier + number_literal) ))))) )) (argument_list "(pbVar17,pbVar19)" ( identifier , identifier )))) ;) (labeled_statement "LAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }" statement_identifier : (while_statement "while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }" while (parenthesized_expression "(pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0)" ( (comma_expression "pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0" (assignment_expression "pbVar17 = *(byte **)(puVar5 + 0x77c24)" identifier = (pointer_expression "*(byte **)(puVar5 + 0x77c24)" * (cast_expression "(byte **)(puVar5 + 0x77c24)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77c24)" ( (binary_expression "puVar5 + 0x77c24" identifier + number_literal) ))))) , (binary_expression "uVar4 == 0" identifier == number_literal)) )) (compound_statement "{\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }" { (expression_statement "puVar18 = puVar22;" (assignment_expression "puVar18 = puVar22" identifier = identifier) ;) (if_statement "if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }" if (parenthesized_expression "(uVar13 != 0)" ( (binary_expression "uVar13 != 0" identifier != number_literal) )) (compound_statement "{\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }" { (expression_statement "(**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);" (call_expression "(**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4)" (parenthesized_expression "(**(code **)(puVar5 + 0x788e8))" ( (pointer_expression "**(code **)(puVar5 + 0x788e8)" * (pointer_expression "*(code **)(puVar5 + 0x788e8)" * (cast_expression "(code **)(puVar5 + 0x788e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x788e8)" ( (binary_expression "puVar5 + 0x788e8" identifier + number_literal) ))))) )) (argument_list "(&local_104,pbVar19 + 8,uVar13,4)" ( (pointer_expression "&local_104" & identifier) , (binary_expression "pbVar19 + 8" identifier + number_literal) , identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);" (call_expression "(**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8)" (parenthesized_expression "(**(code **)(puVar5 + 0x78acc))" ( (pointer_expression "**(code **)(puVar5 + 0x78acc)" * (pointer_expression "*(code **)(puVar5 + 0x78acc)" * (cast_expression "(code **)(puVar5 + 0x78acc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78acc)" ( (binary_expression "puVar5 + 0x78acc" identifier + number_literal) ))))) )) (argument_list "(pbVar19 + uVar13,pbVar19,8)" ( (binary_expression "pbVar19 + uVar13" identifier + identifier) , identifier , number_literal ))) ;) (expression_statement "pbVar17 = local_1ec;" (assignment_expression "pbVar17 = local_1ec" identifier = identifier) ;) (expression_statement "(**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);" (call_expression "(**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13)" (parenthesized_expression "(**(code **)(puVar5 + 0x78aa8))" ( (pointer_expression "**(code **)(puVar5 + 0x78aa8)" * (pointer_expression "*(code **)(puVar5 + 0x78aa8)" * (cast_expression "(code **)(puVar5 + 0x78aa8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78aa8)" ( (binary_expression "puVar5 + 0x78aa8" identifier + number_literal) ))))) )) (argument_list "(local_1ec,&local_104,uVar13)" ( identifier , (pointer_expression "&local_104" & identifier) , identifier ))) ;) })) (do_statement "do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));" do (compound_statement "{\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                }" { (expression_statement "pbVar19 = (byte *)puVar18[1];" (assignment_expression "pbVar19 = (byte *)puVar18[1]" identifier = (cast_expression "(byte *)puVar18[1]" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar18[1]" identifier [ number_literal ]))) ;) (labeled_statement "LAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;" statement_identifier : (expression_statement "uVar14 = uVar26 & 0x10;" (assignment_expression "uVar14 = uVar26 & 0x10" identifier = (binary_expression "uVar26 & 0x10" identifier & number_literal)) ;)) (expression_statement "puVar22 = puVar18;" (assignment_expression "puVar22 = puVar18" identifier = identifier) ;) (if_statement "if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;" if (parenthesized_expression "(pbVar19 == (byte *)0x0)" ( (binary_expression "pbVar19 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b27b0;" goto statement_identifier ;)) (labeled_statement "LAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();" statement_identifier : (expression_statement "uVar31 = (**(code **)(puVar5 + 0x77b34))();" (assignment_expression "uVar31 = (**(code **)(puVar5 + 0x77b34))()" identifier = (call_expression "(**(code **)(puVar5 + 0x77b34))()" (parenthesized_expression "(**(code **)(puVar5 + 0x77b34))" ( (pointer_expression "**(code **)(puVar5 + 0x77b34)" * (pointer_expression "*(code **)(puVar5 + 0x77b34)" * (cast_expression "(code **)(puVar5 + 0x77b34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b34)" ( (binary_expression "puVar5 + 0x77b34" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;)) (labeled_statement "LAB_000b2b48:\n                  puVar18 = puVar22;" statement_identifier : (expression_statement "puVar18 = puVar22;" (assignment_expression "puVar18 = puVar22" identifier = identifier) ;)) }) while (parenthesized_expression "(((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0))" ( (binary_expression "((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0)" (parenthesized_expression "((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30))" ( (binary_expression "(((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)" (parenthesized_expression "(((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30))" ( (binary_expression "((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)" (parenthesized_expression "((int)uVar31 != 0x2e)" ( (binary_expression "(int)uVar31 != 0x2e" (cast_expression "(int)uVar31" ( (type_descriptor "int" primitive_type) ) identifier) != number_literal) )) || (parenthesized_expression "(9 < pbVar17[1] - 0x30)" ( (binary_expression "9 < pbVar17[1] - 0x30" number_literal < (binary_expression "pbVar17[1] - 0x30" (subscript_expression "pbVar17[1]" identifier [ number_literal ]) - number_literal)) ))) )) || (parenthesized_expression "(9 < pbVar17[2] - 0x30)" ( (binary_expression "9 < pbVar17[2] - 0x30" number_literal < (binary_expression "pbVar17[2] - 0x30" (subscript_expression "pbVar17[2]" identifier [ number_literal ]) - number_literal)) ))) )) || (parenthesized_expression "(uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0)" ( (comma_expression "uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0" (assignment_expression "uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8" identifier = (binary_expression "(int)((ulonglong)uVar31 >> 0x20) - 8" (cast_expression "(int)((ulonglong)uVar31 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar31 >> 0x20)" ( (binary_expression "(ulonglong)uVar31 >> 0x20" (cast_expression "(ulonglong)uVar31" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) - number_literal)) , (binary_expression "pbVar17[3] != 0" (subscript_expression "pbVar17[3]" identifier [ number_literal ]) != number_literal)) ))) )) ;) (expression_statement "uVar4 = uVar13 & 1;" (assignment_expression "uVar4 = uVar13 & 1" identifier = (binary_expression "uVar13 & 1" identifier & number_literal)) ;) (if_statement "if (4 < uVar13) goto LAB_000b2ac4;" if (parenthesized_expression "(4 < uVar13)" ( (binary_expression "4 < uVar13" number_literal < identifier) )) (goto_statement "goto LAB_000b2ac4;" goto statement_identifier ;)) }))) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "local_1d4 = 0;" (assignment_expression "local_1d4 = 0" identifier = number_literal) ;) (expression_statement "local_1d0 = 0;" (assignment_expression "local_1d0 = 0" identifier = number_literal) ;) (expression_statement "local_1cc = 0;" (assignment_expression "local_1cc = 0" identifier = number_literal) ;) (if_statement "if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }" if (parenthesized_expression "((uVar4 & 0x40) == 0)" ( (binary_expression "(uVar4 & 0x40) == 0" (parenthesized_expression "(uVar4 & 0x40)" ( (binary_expression "uVar4 & 0x40" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }" { (expression_statement "(**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);" (call_expression "(**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4)" (parenthesized_expression "(**(code **)(puVar5 + 0x7847c))" ( (pointer_expression "**(code **)(puVar5 + 0x7847c)" * (pointer_expression "*(code **)(puVar5 + 0x7847c)" * (cast_expression "(code **)(puVar5 + 0x7847c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x7847c)" ( (binary_expression "puVar5 + 0x7847c" identifier + number_literal) ))))) )) (argument_list "(local_1ec,&local_1d4)" ( identifier , (pointer_expression "&local_1d4" & identifier) ))) ;) (labeled_statement "LAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }" statement_identifier : (if_statement "if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }" if (parenthesized_expression "(*local_1ec != 0x40)" ( (binary_expression "*local_1ec != 0x40" (pointer_expression "*local_1ec" * identifier) != number_literal) )) (compound_statement "{\n              local_1b4 = 0xffffffff;\n            }" { (expression_statement "local_1b4 = 0xffffffff;" (assignment_expression "local_1b4 = 0xffffffff" identifier = number_literal) ;) }))) (expression_statement "puVar18 = &local_1d4;" (assignment_expression "puVar18 = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "local_1dc[0] = (**(code **)(puVar5 + 0x78480))();" (assignment_expression "local_1dc[0] = (**(code **)(puVar5 + 0x78480))()" (subscript_expression "local_1dc[0]" identifier [ number_literal ]) = (call_expression "(**(code **)(puVar5 + 0x78480))()" (parenthesized_expression "(**(code **)(puVar5 + 0x78480))" ( (pointer_expression "**(code **)(puVar5 + 0x78480)" * (pointer_expression "*(code **)(puVar5 + 0x78480)" * (cast_expression "(code **)(puVar5 + 0x78480)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78480)" ( (binary_expression "puVar5 + 0x78480" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }" if (parenthesized_expression "(((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0))" ( (binary_expression "((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)" (parenthesized_expression "((uVar4 & 2) != 0)" ( (binary_expression "(uVar4 & 2) != 0" (parenthesized_expression "(uVar4 & 2)" ( (binary_expression "uVar4 & 2" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "(iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)" ( (comma_expression "iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22)" identifier = (call_expression "(**(code **)(puVar5 + 0x78708))(puVar22)" (parenthesized_expression "(**(code **)(puVar5 + 0x78708))" ( (pointer_expression "**(code **)(puVar5 + 0x78708)" * (pointer_expression "*(code **)(puVar5 + 0x78708)" * (cast_expression "(code **)(puVar5 + 0x78708)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78708)" ( (binary_expression "puVar5 + 0x78708" identifier + number_literal) ))))) )) (argument_list "(puVar22)" ( identifier )))) , (binary_expression "iVar12 < 0" identifier < number_literal)) ))) )) (compound_statement "{\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }" { (expression_statement "(**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);" (call_expression "(**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b90))" ( (pointer_expression "**(code **)(puVar5 + 0x77b90)" * (pointer_expression "*(code **)(puVar5 + 0x77b90)" * (cast_expression "(code **)(puVar5 + 0x77b90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b90)" ( (binary_expression "puVar5 + 0x77b90" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar5 + 0x77b00) + -0x4e34)" ( (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e34" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) ))) ;) })) (goto_statement "goto LAB_000b28d0;" goto statement_identifier ;) })) (expression_statement "iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4)" identifier = (call_expression "(**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4)" (parenthesized_expression "(**(code **)(puVar5 + 0x789f8))" ( (pointer_expression "**(code **)(puVar5 + 0x789f8)" * (pointer_expression "*(code **)(puVar5 + 0x789f8)" * (cast_expression "(code **)(puVar5 + 0x789f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x789f8)" ( (binary_expression "puVar5 + 0x789f8" identifier + number_literal) ))))) )) (argument_list "(local_1ec,local_1e8,&local_1d4)" ( identifier , identifier , (pointer_expression "&local_1d4" & identifier) )))) ;) (if_statement "if (iVar12 != 0) goto LAB_000b2874;" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b2874;" goto statement_identifier ;)) (expression_statement "uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);" (assignment_expression "uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec)" identifier = (call_expression "(**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b3c))" ( (pointer_expression "**(code **)(puVar5 + 0x77b3c)" * (pointer_expression "*(code **)(puVar5 + 0x77b3c)" * (cast_expression "(code **)(puVar5 + 0x77b3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b3c)" ( (binary_expression "puVar5 + 0x77b3c" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar5 + 0x77c24),local_1ec)" ( (pointer_expression "*(undefined4 *)(puVar5 + 0x77c24)" * (cast_expression "(undefined4 *)(puVar5 + 0x77c24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77c24)" ( (binary_expression "puVar5 + 0x77c24" identifier + number_literal) )))) , identifier )))) ;) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;) (labeled_statement "LAB_000b2834:\n          uVar14 = uVar26 & 0x10;" statement_identifier : (expression_statement "uVar14 = uVar26 & 0x10;" (assignment_expression "uVar14 = uVar26 & 0x10" identifier = (binary_expression "uVar26 & 0x10" identifier & number_literal)) ;)) (if_statement "if (uVar13 != 0) goto LAB_000b27b0;" if (parenthesized_expression "(uVar13 != 0)" ( (binary_expression "uVar13 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b27b0;" goto statement_identifier ;)) (expression_statement "uVar4 = uVar26 | 2;" (assignment_expression "uVar4 = uVar26 | 2" identifier = (binary_expression "uVar26 | 2" identifier | number_literal)) ;) (expression_statement "local_1ec = (byte *)0x0;" (assignment_expression "local_1ec = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;" if (parenthesized_expression "((uVar26 & 0x10) != 0)" ( (binary_expression "(uVar26 & 0x10) != 0" (parenthesized_expression "(uVar26 & 0x10)" ( (binary_expression "uVar26 & 0x10" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000b27b8;" goto statement_identifier ;)) (expression_statement "pcVar30 = *(code **)(puVar5 + 0x78a84);" (assignment_expression "pcVar30 = *(code **)(puVar5 + 0x78a84)" identifier = (pointer_expression "*(code **)(puVar5 + 0x78a84)" * (cast_expression "(code **)(puVar5 + 0x78a84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78a84)" ( (binary_expression "puVar5 + 0x78a84" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000b2850:\n          (*pcVar30)(local_1dc);" statement_identifier : (expression_statement "(*pcVar30)(local_1dc);" (call_expression "(*pcVar30)(local_1dc)" (parenthesized_expression "(*pcVar30)" ( (pointer_expression "*pcVar30" * identifier) )) (argument_list "(local_1dc)" ( identifier ))) ;)) (expression_statement "pbVar19 = pbVar20;" (assignment_expression "pbVar19 = pbVar20" identifier = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })) })) }) (else_clause "else {\n    puVar22 = (undefined4 *)0x9;\n  }" else (compound_statement "{\n    puVar22 = (undefined4 *)0x9;\n  }" { (expression_statement "puVar22 = (undefined4 *)0x9;" (assignment_expression "puVar22 = (undefined4 *)0x9" identifier = (cast_expression "(undefined4 *)0x9" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (labeled_statement "LAB_000b204c:\n  uVar4 = 0;" statement_identifier : (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;)) (expression_statement "piVar21 = (int *)0x0;" (assignment_expression "piVar21 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_74 = *(int *)PTR_optind_0012b0ec;" (assignment_expression "local_74 = *(int *)PTR_optind_0012b0ec" identifier = (pointer_expression "*(int *)PTR_optind_0012b0ec" * (cast_expression "(int *)PTR_optind_0012b0ec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "puVar5 = PTR_FUN_0012a1a8 + -0x6a44;" (assignment_expression "puVar5 = PTR_FUN_0012a1a8 + -0x6a44" identifier = (binary_expression "PTR_FUN_0012a1a8 + -0x6a44" identifier + number_literal)) ;) (expression_statement "puVar6 = PTR_FUN_0012a1a8 + -0x1308;" (assignment_expression "puVar6 = PTR_FUN_0012a1a8 + -0x1308" identifier = (binary_expression "PTR_FUN_0012a1a8 + -0x1308" identifier + number_literal)) ;) (expression_statement "piVar23 = (int *)PTR_FUN_0012a1a8;" (assignment_expression "piVar23 = (int *)PTR_FUN_0012a1a8" identifier = (cast_expression "(int *)PTR_FUN_0012a1a8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (do_statement "do {\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  } while( true );" do (compound_statement "{\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  }" { (do_statement "do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);" do (compound_statement "{\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    }" { (expression_statement "local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);" (assignment_expression "local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5)" identifier = (cast_expression "(byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" ( (pointer_expression "*(code *)PTR_strsep_0012afa0" * (cast_expression "(code *)PTR_strsep_0012afa0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(auStack_3c,puVar5)" ( identifier , identifier ))))) ;) (if_statement "if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }" if (parenthesized_expression "(local_38 == (byte *)0x0)" ( (binary_expression "local_38 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }" { (if_statement "if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }" if (parenthesized_expression "(uVar4 == 0)" ( (binary_expression "uVar4 == 0" identifier == number_literal) )) (compound_statement "{\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }" { (expression_statement "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);" (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4e90)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4e90" identifier + number_literal) ))) ;) })) (expression_statement "piVar25 = (int *)(param_2 + local_74 * 4);" (assignment_expression "piVar25 = (int *)(param_2 + local_74 * 4)" identifier = (cast_expression "(int *)(param_2 + local_74 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + local_74 * 4)" ( (binary_expression "param_2 + local_74 * 4" identifier + (binary_expression "local_74 * 4" identifier * number_literal)) )))) ;) (expression_statement "(*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);" (call_expression "(*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64)" (parenthesized_expression "(*(code *)PTR_qsort_0012ad24)" ( (pointer_expression "*(code *)PTR_qsort_0012ad24" * (cast_expression "(code *)PTR_qsort_0012ad24" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64)" ( identifier , identifier , number_literal , (binary_expression "PTR_LAB_0012aad4 + 0x1f64" identifier + number_literal) ))) ;) (if_statement "if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }" if (parenthesized_expression "(*piVar25 == 0)" ( (binary_expression "*piVar25 == 0" (pointer_expression "*piVar25" * identifier) == number_literal) )) (compound_statement "{\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }" { (expression_statement "piVar25 = piVar25 + -1;" (assignment_expression "piVar25 = piVar25 + -1" identifier = (binary_expression "piVar25 + -1" identifier + number_literal)) ;) (expression_statement "*piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);" (assignment_expression "*piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308)" (pointer_expression "*piVar25" * identifier) = (cast_expression "(int)(PTR_FUN_0012a1a8 + -0x1308)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(PTR_FUN_0012a1a8 + -0x1308)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x1308" identifier + number_literal) )))) ;) })) (expression_statement "puVar6 = PTR_FUN_0012a3f0;" (assignment_expression "puVar6 = PTR_FUN_0012a3f0" identifier = identifier) ;) (expression_statement "puVar5 = PTR_FUN_0012a2fc;" (assignment_expression "puVar5 = PTR_FUN_0012a2fc" identifier = identifier) ;) (expression_statement "local_5c = 0;" (assignment_expression "local_5c = 0" identifier = number_literal) ;) (labeled_statement "LAB_000b216c:\n        iVar12 = (*(code *)puVar6)();" statement_identifier : (expression_statement "iVar12 = (*(code *)puVar6)();" (assignment_expression "iVar12 = (*(code *)puVar6)()" identifier = (call_expression "(*(code *)puVar6)()" (parenthesized_expression "(*(code *)puVar6)" ( (pointer_expression "*(code *)puVar6" * (cast_expression "(code *)puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;)) (if_statement "if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }" { (expression_statement "local_5c = 1;" (assignment_expression "local_5c = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000b21b8;" goto statement_identifier ;) })) (expression_statement "piVar23 = &local_34;" (assignment_expression "piVar23 = &local_34" identifier = (pointer_expression "&local_34" & identifier)) ;) (expression_statement "local_74 = 0;" (assignment_expression "local_74 = 0" identifier = number_literal) ;) (do_statement "do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );" do (compound_statement "{\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        }" { (expression_statement "iVar8 = (*(code *)puVar5)(iVar12);" (assignment_expression "iVar8 = (*(code *)puVar5)(iVar12)" identifier = (call_expression "(*(code *)puVar5)(iVar12)" (parenthesized_expression "(*(code *)puVar5)" ( (pointer_expression "*(code *)puVar5" * (cast_expression "(code *)puVar5" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar12)" ( identifier )))) ;) (expression_statement "local_34 = iVar8;" (assignment_expression "local_34 = iVar8" identifier = identifier) ;) (if_statement "if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }" { (expression_statement "(*(code *)PTR_FUN_0012a3f4)(iVar12);" (call_expression "(*(code *)PTR_FUN_0012a3f4)(iVar12)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3f4)" ( (pointer_expression "*(code *)PTR_FUN_0012a3f4" * (cast_expression "(code *)PTR_FUN_0012a3f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar12)" ( identifier ))) ;) (labeled_statement "LAB_000b21b8:\n            piVar25 = piVar25 + 1;" statement_identifier : (expression_statement "piVar25 = piVar25 + 1;" (assignment_expression "piVar25 = piVar25 + 1" identifier = (binary_expression "piVar25 + 1" identifier + number_literal)) ;)) (if_statement "if (*piVar25 != 0) goto LAB_000b216c;" if (parenthesized_expression "(*piVar25 != 0)" ( (binary_expression "*piVar25 != 0" (pointer_expression "*piVar25" * identifier) != number_literal) )) (goto_statement "goto LAB_000b216c;" goto statement_identifier ;)) (expression_statement "iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);" (assignment_expression "iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c)" identifier = (call_expression "(*(code *)PTR_FUN_0012a3f8)(local_5c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3f8)" ( (pointer_expression "*(code *)PTR_FUN_0012a3f8" * (cast_expression "(code *)PTR_FUN_0012a3f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_5c)" ( identifier )))) ;) })) (expression_statement "iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);" (assignment_expression "iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8)" identifier = (call_expression "(*(code *)PTR_strlen_0012af3c)(iVar8)" (parenthesized_expression "(*(code *)PTR_strlen_0012af3c)" ( (pointer_expression "*(code *)PTR_strlen_0012af3c" * (cast_expression "(code *)PTR_strlen_0012af3c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8)" ( identifier )))) ;) (expression_statement "iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);" (assignment_expression "iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1)" identifier = (call_expression "(*(code *)PTR_FUN_0012a1d0)(iVar9 + 1)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1d0)" ( (pointer_expression "*(code *)PTR_FUN_0012a1d0" * (cast_expression "(code *)PTR_FUN_0012a1d0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9 + 1)" ( (binary_expression "iVar9 + 1" identifier + number_literal) )))) ;) (expression_statement "iVar8 = local_34;" (assignment_expression "iVar8 = local_34" identifier = identifier) ;) (expression_statement "puVar3 = PTR_stdout_0012ae40;" (assignment_expression "puVar3 = PTR_stdout_0012ae40" identifier = identifier) ;) (expression_statement "uVar26 = *(uint *)PTR_DAT_0012a334;" (assignment_expression "uVar26 = *(uint *)PTR_DAT_0012a334" identifier = (pointer_expression "*(uint *)PTR_DAT_0012a334" * (cast_expression "(uint *)PTR_DAT_0012a334" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }" if (parenthesized_expression "((uVar26 & 3) == 0)" ( (binary_expression "(uVar26 & 3) == 0" (parenthesized_expression "(uVar26 & 3)" ( (binary_expression "uVar26 & 3" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }" { (if_statement "if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }" if (parenthesized_expression "(puVar22 == (undefined4 *)&DAT_0000000a)" ( (binary_expression "puVar22 == (undefined4 *)&DAT_0000000a" identifier == (cast_expression "(undefined4 *)&DAT_0000000a" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0000000a" & identifier))) )) (compound_statement "{\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }" { (expression_statement "iVar9 = *piVar21;" (assignment_expression "iVar9 = *piVar21" identifier = (pointer_expression "*piVar21" * identifier)) ;) (if_statement "if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }" if (parenthesized_expression "(iVar9 <= local_74)" ( (binary_expression "iVar9 <= local_74" identifier <= identifier) )) (compound_statement "{\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }" { (if_statement "if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }" if (parenthesized_expression "(iVar9 < local_74)" ( (binary_expression "iVar9 < local_74" identifier < identifier) )) (compound_statement "{\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }" { (expression_statement "iVar16 = 0;" (assignment_expression "iVar16 = 0" identifier = number_literal) ;) (do_statement "do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);" do (compound_statement "{\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  }" { (expression_statement "iVar9 = iVar9 + 1;" (assignment_expression "iVar9 = iVar9 + 1" identifier = (binary_expression "iVar9 + 1" identifier + number_literal)) ;) (if_statement "if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" if (parenthesized_expression "(piVar21[iVar16 * 2 + 1] < iVar9)" ( (binary_expression "piVar21[iVar16 * 2 + 1] < iVar9" (subscript_expression "piVar21[iVar16 * 2 + 1]" identifier [ (binary_expression "iVar16 * 2 + 1" (binary_expression "iVar16 * 2" identifier * number_literal) + number_literal) ]) < identifier) )) (compound_statement "{\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }" { (if_statement "if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;" if (parenthesized_expression "(uVar4 <= iVar16 + 1U)" ( (binary_expression "uVar4 <= iVar16 + 1U" identifier <= (binary_expression "iVar16 + 1U" identifier + number_literal)) )) (goto_statement "goto LAB_000b22d0;" goto statement_identifier ;)) (expression_statement "iVar9 = piVar21[iVar16 * 2 + 2];" (assignment_expression "iVar9 = piVar21[iVar16 * 2 + 2]" identifier = (subscript_expression "piVar21[iVar16 * 2 + 2]" identifier [ (binary_expression "iVar16 * 2 + 2" (binary_expression "iVar16 * 2" identifier * number_literal) + number_literal) ])) ;) (labeled_statement "LAB_000b2350:\n                      iVar16 = iVar16 + 1;" statement_identifier : (expression_statement "iVar16 = iVar16 + 1;" (assignment_expression "iVar16 = iVar16 + 1" identifier = (binary_expression "iVar16 + 1" identifier + number_literal)) ;)) (if_statement "if (local_74 < iVar9) goto LAB_000b22d0;" if (parenthesized_expression "(local_74 < iVar9)" ( (binary_expression "local_74 < iVar9" identifier < identifier) )) (goto_statement "goto LAB_000b22d0;" goto statement_identifier ;)) }) (else_clause "else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" else (if_statement "if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" if (parenthesized_expression "(piVar21[iVar16 * 2 + 1] == -1)" ( (binary_expression "piVar21[iVar16 * 2 + 1] == -1" (subscript_expression "piVar21[iVar16 * 2 + 1]" identifier [ (binary_expression "iVar16 * 2 + 1" (binary_expression "iVar16 * 2" identifier * number_literal) + number_literal) ]) == number_literal) )) (compound_statement "{\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" { (if_statement "if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }" if (parenthesized_expression "(iVar16 + 1U < uVar4)" ( (binary_expression "iVar16 + 1U < uVar4" (binary_expression "iVar16 + 1U" identifier + number_literal) < identifier) )) (compound_statement "{\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }" { (expression_statement "iVar9 = piVar21[iVar16 * 2 + 2];" (assignment_expression "iVar9 = piVar21[iVar16 * 2 + 2]" identifier = (subscript_expression "piVar21[iVar16 * 2 + 2]" identifier [ (binary_expression "iVar16 * 2 + 2" (binary_expression "iVar16 * 2" identifier * number_literal) + number_literal) ])) ;) (goto_statement "goto LAB_000b2350;" goto statement_identifier ;) })) (goto_statement "goto LAB_000b22d0;" goto statement_identifier ;) })))) }) while (parenthesized_expression "(iVar9 < local_74)" ( (binary_expression "iVar9 < local_74" identifier < identifier) )) ;) })) (expression_statement "(*(code *)PTR_puts_0012afb4)(local_34);" (call_expression "(*(code *)PTR_puts_0012afb4)(local_34)" (parenthesized_expression "(*(code *)PTR_puts_0012afb4)" ( (pointer_expression "*(code *)PTR_puts_0012afb4" * (cast_expression "(code *)PTR_puts_0012afb4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_34)" ( identifier ))) ;) })) }) (else_clause "else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }" else (compound_statement "{\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }" { (expression_statement "local_2f = 0;" (assignment_expression "local_2f = 0" identifier = number_literal) ;) (expression_statement "local_30 = (char)puVar22;" (assignment_expression "local_30 = (char)puVar22" identifier = (cast_expression "(char)puVar22" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);" (assignment_expression "iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22)" identifier = (call_expression "(*(code *)PTR_strchr_0012af54)(local_34,puVar22)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" ( (pointer_expression "*(code *)PTR_strchr_0012af54" * (cast_expression "(code *)PTR_strchr_0012af54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_34,puVar22)" ( identifier , identifier )))) ;) (expression_statement "puVar3 = PTR_stdout_0012ae40;" (assignment_expression "puVar3 = PTR_stdout_0012ae40" identifier = identifier) ;) (if_statement "if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }" { (expression_statement "iVar16 = 0;" (assignment_expression "iVar16 = 0" identifier = number_literal) ;) (expression_statement "iVar27 = -1;" (assignment_expression "iVar27 = -1" identifier = number_literal) ;) (expression_statement "local_68 = 1;" (assignment_expression "local_68 = 1" identifier = number_literal) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (expression_statement "iVar9 = iVar8;" (assignment_expression "iVar9 = iVar8" identifier = identifier) ;) (expression_statement "local_70 = piVar21;" (assignment_expression "local_70 = piVar21" identifier = identifier) ;) (while_statement "while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }" { (expression_statement "iVar29 = *local_70;" (assignment_expression "iVar29 = *local_70" identifier = (pointer_expression "*local_70" * identifier)) ;) (do_statement "do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);" do (compound_statement "{\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  }" { (for_statement "for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }" for ( ; (parenthesized_expression "(iVar9 != 0 && (iVar27 < iVar29))" ( (binary_expression "iVar9 != 0 && (iVar27 < iVar29)" (binary_expression "iVar9 != 0" identifier != number_literal) && (parenthesized_expression "(iVar27 < iVar29)" ( (binary_expression "iVar27 < iVar29" identifier < identifier) ))) )) ; (assignment_expression "iVar27 = iVar27 + 1" identifier = (binary_expression "iVar27 + 1" identifier + number_literal)) ) (compound_statement "{\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }" { (expression_statement "iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);" (assignment_expression "iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30)" identifier = (call_expression "(*(code *)PTR_strsep_0012afa0)(piVar23,&local_30)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" ( (pointer_expression "*(code *)PTR_strsep_0012afa0" * (cast_expression "(code *)PTR_strsep_0012afa0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar23,&local_30)" ( identifier , (pointer_expression "&local_30" & identifier) )))) ;) (expression_statement "iVar9 = local_34;" (assignment_expression "iVar9 = local_34" identifier = identifier) ;) })) (if_statement "if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }" if (parenthesized_expression "(((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0'))" ( (binary_expression "((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')" (parenthesized_expression "((iVar16 != 0) && (iVar27 == iVar29))" ( (binary_expression "(iVar16 != 0) && (iVar27 == iVar29)" (parenthesized_expression "(iVar16 != 0)" ( (binary_expression "iVar16 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar27 == iVar29)" ( (binary_expression "iVar27 == iVar29" identifier == identifier) ))) )) && (parenthesized_expression "(*(char *)(iVar10 + iVar27) == '\0')" ( (binary_expression "*(char *)(iVar10 + iVar27) == '\0'" (pointer_expression "*(char *)(iVar10 + iVar27)" * (cast_expression "(char *)(iVar10 + iVar27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + iVar27)" ( (binary_expression "iVar10 + iVar27" identifier + identifier) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }" { (expression_statement "iVar9 = *(int *)puVar3;" (assignment_expression "iVar9 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }" if (parenthesized_expression "(local_60 != 0)" ( (binary_expression "local_60 != 0" identifier != number_literal) )) (compound_statement "{\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }" { (expression_statement "puVar11 = *(undefined1 **)(iVar9 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar9 + 0x14)" identifier = (pointer_expression "*(undefined1 **)(iVar9 + 0x14)" * (cast_expression "(undefined1 **)(iVar9 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x14)" ( (binary_expression "iVar9 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }" if (parenthesized_expression "(puVar11 < *(undefined1 **)(iVar9 + 0x18))" ( (binary_expression "puVar11 < *(undefined1 **)(iVar9 + 0x18)" identifier < (pointer_expression "*(undefined1 **)(iVar9 + 0x18)" * (cast_expression "(undefined1 **)(iVar9 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }" { (expression_statement "*(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;" (assignment_expression "*(undefined1 **)(iVar9 + 0x14) = puVar11 + 1" (pointer_expression "*(undefined1 **)(iVar9 + 0x14)" * (cast_expression "(undefined1 **)(iVar9 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x14)" ( (binary_expression "iVar9 + 0x14" identifier + number_literal) )))) = (binary_expression "puVar11 + 1" identifier + number_literal)) ;) (expression_statement "*puVar11 = (char)puVar22;" (assignment_expression "*puVar11 = (char)puVar22" (pointer_expression "*puVar11" * identifier) = (cast_expression "(char)puVar22" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "iVar9 = *(int *)puVar3;" (assignment_expression "iVar9 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) }) (else_clause "else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }" else (compound_statement "{\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }" { (expression_statement "(*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);" (call_expression "(*(code *)PTR___overflow_0012ada8)(iVar9,puVar22)" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" ( (pointer_expression "*(code *)PTR___overflow_0012ada8" * (cast_expression "(code *)PTR___overflow_0012ada8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9,puVar22)" ( identifier , identifier ))) ;) (expression_statement "iVar9 = *(int *)puVar3;" (assignment_expression "iVar9 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) }))) })) (expression_statement "local_60 = local_60 + 1;" (assignment_expression "local_60 = local_60 + 1" identifier = (binary_expression "local_60 + 1" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);" (call_expression "(*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9)" (parenthesized_expression "(*(code *)PTR_fputs_unlocked_0012b204)" ( (pointer_expression "*(code *)PTR_fputs_unlocked_0012b204" * (cast_expression "(code *)PTR_fputs_unlocked_0012b204" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar16,iVar9)" ( identifier , identifier ))) ;) (expression_statement "*(char *)(iVar10 + iVar27) = 'X';" (assignment_expression "*(char *)(iVar10 + iVar27) = 'X'" (pointer_expression "*(char *)(iVar10 + iVar27)" * (cast_expression "(char *)(iVar10 + iVar27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + iVar27)" ( (binary_expression "iVar10 + iVar27" identifier + identifier) )))) = (char_literal "'X'" ' character ')) ;) })) (expression_statement "iVar29 = iVar29 + 1;" (assignment_expression "iVar29 = iVar29 + 1" identifier = (binary_expression "iVar29 + 1" identifier + number_literal)) ;) (expression_statement "iVar9 = local_34;" (assignment_expression "iVar9 = local_34" identifier = identifier) ;) (if_statement "if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }" if (parenthesized_expression "(local_70[1] < iVar29)" ( (binary_expression "local_70[1] < iVar29" (subscript_expression "local_70[1]" identifier [ number_literal ]) < identifier) )) (compound_statement "{\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }" { (if_statement "if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;" if (parenthesized_expression "((uVar4 <= local_68) || (local_34 == 0))" ( (binary_expression "(uVar4 <= local_68) || (local_34 == 0)" (parenthesized_expression "(uVar4 <= local_68)" ( (binary_expression "uVar4 <= local_68" identifier <= identifier) )) || (parenthesized_expression "(local_34 == 0)" ( (binary_expression "local_34 == 0" identifier == number_literal) ))) )) (goto_statement "goto LAB_000b252c;" goto statement_identifier ;)) (goto_statement "goto LAB_000b24fc;" goto statement_identifier ;) })) (if_statement "if (local_34 == 0) goto LAB_000b252c;" if (parenthesized_expression "(local_34 == 0)" ( (binary_expression "local_34 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000b252c;" goto statement_identifier ;)) }) while (parenthesized_expression "(local_70[1] != -1)" ( (binary_expression "local_70[1] != -1" (subscript_expression "local_70[1]" identifier [ number_literal ]) != number_literal) )) ;) (if_statement "if (uVar4 <= local_68) break;" if (parenthesized_expression "(uVar4 <= local_68)" ( (binary_expression "uVar4 <= local_68" identifier <= identifier) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000b24fc:\n                  local_70 = local_70 + 2;" statement_identifier : (expression_statement "local_70 = local_70 + 2;" (assignment_expression "local_70 = local_70 + 2" identifier = (binary_expression "local_70 + 2" identifier + number_literal)) ;)) (expression_statement "local_68 = local_68 + 1;" (assignment_expression "local_68 = local_68 + 1" identifier = (binary_expression "local_68 + 1" identifier + number_literal)) ;) })) (labeled_statement "LAB_000b252c:\n                iVar16 = *(int *)puVar3;" statement_identifier : (expression_statement "iVar16 = *(int *)puVar3;" (assignment_expression "iVar16 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;)) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;" if (parenthesized_expression "(puVar11 < *(undefined1 **)(iVar16 + 0x18))" ( (binary_expression "puVar11 < *(undefined1 **)(iVar16 + 0x18)" identifier < (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" * (cast_expression "(undefined1 **)(iVar16 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x18)" ( (binary_expression "iVar16 + 0x18" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000b2544;" goto statement_identifier ;)) (goto_statement "goto LAB_000b22bc;" goto statement_identifier ;) })) (if_statement "if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }" if (parenthesized_expression "((uVar26 & 0x10) == 0)" ( (binary_expression "(uVar26 & 0x10) == 0" (parenthesized_expression "(uVar26 & 0x10)" ( (binary_expression "uVar26 & 0x10" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }" { (expression_statement "(*(code *)PTR_puts_0012afb4)(iVar8);" (call_expression "(*(code *)PTR_puts_0012afb4)(iVar8)" (parenthesized_expression "(*(code *)PTR_puts_0012afb4)" ( (pointer_expression "*(code *)PTR_puts_0012afb4" * (cast_expression "(code *)PTR_puts_0012afb4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8)" ( identifier ))) ;) })) }))) }) (else_clause "else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }" else (compound_statement "{\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }" { (expression_statement "iVar16 = *(int *)PTR_stdout_0012ae40;" (assignment_expression "iVar16 = *(int *)PTR_stdout_0012ae40" identifier = (pointer_expression "*(int *)PTR_stdout_0012ae40" * (cast_expression "(int *)PTR_stdout_0012ae40" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "puVar15 = *(undefined1 **)(iVar16 + 0x18);" (assignment_expression "puVar15 = *(undefined1 **)(iVar16 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" * (cast_expression "(undefined1 **)(iVar16 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x18)" ( (binary_expression "iVar16 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "piVar28 = piVar21;" (assignment_expression "piVar28 = piVar21" identifier = identifier) ;) (do_statement "do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);" do (compound_statement "{\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            }" { (while_statement "while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }" while (parenthesized_expression "(iVar27 = *piVar28, iVar9 <= iVar27)" ( (comma_expression "iVar27 = *piVar28, iVar9 <= iVar27" (assignment_expression "iVar27 = *piVar28" identifier = (pointer_expression "*piVar28" * identifier)) , (binary_expression "iVar9 <= iVar27" identifier <= identifier)) )) (compound_statement "{\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }" { (labeled_statement "LAB_000b22a0:\n                piVar28 = piVar28 + 2;" statement_identifier : (expression_statement "piVar28 = piVar28 + 2;" (assignment_expression "piVar28 = piVar28 + 2" identifier = (binary_expression "piVar28 + 2" identifier + number_literal)) ;)) (if_statement "if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }" if (parenthesized_expression "(piVar21 + uVar4 * 2 == piVar28)" ( (binary_expression "piVar21 + uVar4 * 2 == piVar28" (binary_expression "piVar21 + uVar4 * 2" identifier + (binary_expression "uVar4 * 2" identifier * number_literal)) == identifier) )) (compound_statement "{\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }" { (expression_statement "bVar2 = puVar11 < puVar15;" (assignment_expression "bVar2 = puVar11 < puVar15" identifier = (binary_expression "puVar11 < puVar15" identifier < identifier)) ;) (goto_statement "goto LAB_000b22b4;" goto statement_identifier ;) })) })) (expression_statement "pcVar7 = (char *)(iVar10 + iVar27);" (assignment_expression "pcVar7 = (char *)(iVar10 + iVar27)" identifier = (cast_expression "(char *)(iVar10 + iVar27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + iVar27)" ( (binary_expression "iVar10 + iVar27" identifier + identifier) )))) ;) (do_statement "do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);" do (compound_statement "{\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              }" { (if_statement "if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" if (parenthesized_expression "(*pcVar7 == '\0')" ( (binary_expression "*pcVar7 == '\0'" (pointer_expression "*pcVar7" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" { (expression_statement "*pcVar7 = 'X';" (assignment_expression "*pcVar7 = 'X'" (pointer_expression "*pcVar7" * identifier) = (char_literal "'X'" ' character ')) ;) (expression_statement "uVar1 = *(undefined1 *)(local_34 + iVar27);" (assignment_expression "uVar1 = *(undefined1 *)(local_34 + iVar27)" identifier = (pointer_expression "*(undefined1 *)(local_34 + iVar27)" * (cast_expression "(undefined1 *)(local_34 + iVar27)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_34 + iVar27)" ( (binary_expression "local_34 + iVar27" identifier + identifier) ))))) ;) (if_statement "if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }" if (parenthesized_expression "(puVar15 <= puVar11)" ( (binary_expression "puVar15 <= puVar11" identifier <= identifier) )) (compound_statement "{\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }" { (expression_statement "(*(code *)PTR___overflow_0012ada8)();" (call_expression "(*(code *)PTR___overflow_0012ada8)()" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" ( (pointer_expression "*(code *)PTR___overflow_0012ada8" * (cast_expression "(code *)PTR___overflow_0012ada8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iVar16 = *(int *)puVar3;" (assignment_expression "iVar16 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "puVar15 = *(undefined1 **)(iVar16 + 0x18);" (assignment_expression "puVar15 = *(undefined1 **)(iVar16 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" * (cast_expression "(undefined1 **)(iVar16 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x18)" ( (binary_expression "iVar16 + 0x18" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000b228c;" goto statement_identifier ;) })) (expression_statement "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;" (assignment_expression "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1" (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) )))) = (binary_expression "puVar11 + 1" identifier + number_literal)) ;) (expression_statement "*puVar11 = uVar1;" (assignment_expression "*puVar11 = uVar1" (pointer_expression "*puVar11" * identifier) = identifier) ;) (expression_statement "iVar16 = *(int *)puVar3;" (assignment_expression "iVar16 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "puVar15 = *(undefined1 **)(iVar16 + 0x18);" (assignment_expression "puVar15 = *(undefined1 **)(iVar16 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" * (cast_expression "(undefined1 **)(iVar16 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x18)" ( (binary_expression "iVar16 + 0x18" identifier + number_literal) ))))) ;) (if_statement "if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" if (parenthesized_expression "(piVar28[1] < iVar27 + 1)" ( (binary_expression "piVar28[1] < iVar27 + 1" (subscript_expression "piVar28[1]" identifier [ number_literal ]) < (binary_expression "iVar27 + 1" identifier + number_literal)) )) (goto_statement "goto LAB_000b22a0;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" else (compound_statement "{\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" { (labeled_statement "LAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" statement_identifier : (if_statement "if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" if (parenthesized_expression "(piVar28[1] < iVar27 + 1)" ( (binary_expression "piVar28[1] < iVar27 + 1" (subscript_expression "piVar28[1]" identifier [ number_literal ]) < (binary_expression "iVar27 + 1" identifier + number_literal)) )) (goto_statement "goto LAB_000b22a0;" goto statement_identifier ;))) }))) (expression_statement "iVar27 = iVar27 + 1;" (assignment_expression "iVar27 = iVar27 + 1" identifier = (binary_expression "iVar27 + 1" identifier + number_literal)) ;) (expression_statement "pcVar7 = pcVar7 + 1;" (assignment_expression "pcVar7 = pcVar7 + 1" identifier = (binary_expression "pcVar7 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar9 != iVar27)" ( (binary_expression "iVar9 != iVar27" identifier != identifier) )) ;) (expression_statement "piVar28 = piVar28 + 2;" (assignment_expression "piVar28 = piVar28 + 2" identifier = (binary_expression "piVar28 + 2" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar21 + uVar4 * 2 != piVar28)" ( (binary_expression "piVar21 + uVar4 * 2 != piVar28" (binary_expression "piVar21 + uVar4 * 2" identifier + (binary_expression "uVar4 * 2" identifier * number_literal)) != identifier) )) ;) (expression_statement "bVar2 = puVar11 < puVar15;" (assignment_expression "bVar2 = puVar11 < puVar15" identifier = (binary_expression "puVar11 < puVar15" identifier < identifier)) ;) (labeled_statement "LAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" statement_identifier : (if_statement "if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" if (parenthesized_expression "(bVar2)" ( identifier )) (compound_statement "{\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }" { (labeled_statement "LAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;" statement_identifier : (expression_statement "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;" (assignment_expression "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1" (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) )))) = (binary_expression "puVar11 + 1" identifier + number_literal)) ;)) (expression_statement "*puVar11 = 10;" (assignment_expression "*puVar11 = 10" (pointer_expression "*puVar11" * identifier) = number_literal) ;) }) (else_clause "else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" else (compound_statement "{\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" { (labeled_statement "LAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);" statement_identifier : (expression_statement "(*(code *)PTR___overflow_0012ada8)(iVar16,10);" (call_expression "(*(code *)PTR___overflow_0012ada8)(iVar16,10)" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" ( (pointer_expression "*(code *)PTR___overflow_0012ada8" * (cast_expression "(code *)PTR___overflow_0012ada8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar16,10)" ( identifier , number_literal ))) ;)) })))) }))) (labeled_statement "LAB_000b22d0:\n          local_74 = local_74 + 1;" statement_identifier : (expression_statement "local_74 = local_74 + 1;" (assignment_expression "local_74 = local_74 + 1" identifier = (binary_expression "local_74 + 1" identifier + number_literal)) ;)) (expression_statement "(*(code *)PTR_free_0012b168)(iVar10);" (call_expression "(*(code *)PTR_free_0012b168)(iVar10)" (parenthesized_expression "(*(code *)PTR_free_0012b168)" ( (pointer_expression "*(code *)PTR_free_0012b168" * (cast_expression "(code *)PTR_free_0012b168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar10)" ( identifier ))) ;) (expression_statement "(*(code *)PTR_free_0012b168)(iVar8);" (call_expression "(*(code *)PTR_free_0012b168)(iVar8)" (parenthesized_expression "(*(code *)PTR_free_0012b168)" ( (pointer_expression "*(code *)PTR_free_0012b168" * (cast_expression "(code *)PTR_free_0012b168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8)" ( identifier ))) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })) }) while (parenthesized_expression "(*local_38 == 0)" ( (binary_expression "*local_38 == 0" (pointer_expression "*local_38" * identifier) == number_literal) )) ;) (expression_statement "pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);" (assignment_expression "pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6)" identifier = (cast_expression "(char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" ( (pointer_expression "*(code *)PTR_strsep_0012afa0" * (cast_expression "(code *)PTR_strsep_0012afa0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_38,puVar6)" ( (pointer_expression "&local_38" & identifier) , identifier ))))) ;) (if_statement "if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }" if (parenthesized_expression "((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0))" ( (binary_expression "(*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)" (parenthesized_expression "(*pcVar7 == '\0')" ( (binary_expression "*pcVar7 == '\0'" (pointer_expression "*pcVar7" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)" ( (comma_expression "iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0" (assignment_expression "iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7)" identifier = (call_expression "(*(code *)PTR_FUN_0012a3e8)(pcVar7)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3e8)" ( (pointer_expression "*(code *)PTR_FUN_0012a3e8" * (cast_expression "(code *)PTR_FUN_0012a3e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar7)" ( identifier )))) , (binary_expression "iVar12 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }" { (expression_statement "piVar25 = (int *)0x0;" (assignment_expression "piVar25 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_38 != (byte *)0x0) goto LAB_000b25f8;" if (parenthesized_expression "(local_38 != (byte *)0x0)" ( (binary_expression "local_38 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b25f8;" goto statement_identifier ;)) (labeled_statement "LAB_000b20c8:\n      piVar23 = (int *)0xffffffff;" statement_identifier : (expression_statement "piVar23 = (int *)0xffffffff;" (assignment_expression "piVar23 = (int *)0xffffffff" identifier = (cast_expression "(int *)0xffffffff" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) }) (else_clause "else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }" else (compound_statement "{\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }" { (expression_statement "piVar25 = (int *)(iVar12 + -1);" (assignment_expression "piVar25 = (int *)(iVar12 + -1)" identifier = (cast_expression "(int *)(iVar12 + -1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -1)" ( (binary_expression "iVar12 + -1" identifier + number_literal) )))) ;) (if_statement "if (local_38 == (byte *)0x0) goto LAB_000b20c8;" if (parenthesized_expression "(local_38 == (byte *)0x0)" ( (binary_expression "local_38 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b20c8;" goto statement_identifier ;)) (labeled_statement "LAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;" statement_identifier : (expression_statement "piVar23 = (int *)0x7fffffff;" (assignment_expression "piVar23 = (int *)0x7fffffff" identifier = (cast_expression "(int *)0x7fffffff" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (if_statement "if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }" if (parenthesized_expression "(*local_38 != 0)" ( (binary_expression "*local_38 != 0" (pointer_expression "*local_38" * identifier) != number_literal) )) (compound_statement "{\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }" { (expression_statement "piVar23 = (int *)0x7ffffffe;" (assignment_expression "piVar23 = (int *)0x7ffffffe" identifier = (cast_expression "(int *)0x7ffffffe" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar12 = (*(code *)PTR_FUN_0012a3e8)();" (assignment_expression "iVar12 = (*(code *)PTR_FUN_0012a3e8)()" identifier = (call_expression "(*(code *)PTR_FUN_0012a3e8)()" (parenthesized_expression "(*(code *)PTR_FUN_0012a3e8)" ( (pointer_expression "*(code *)PTR_FUN_0012a3e8" * (cast_expression "(code *)PTR_FUN_0012a3e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n          piVar23 = (int *)(iVar12 + -1);\n        }" { (expression_statement "piVar23 = (int *)(iVar12 + -1);" (assignment_expression "piVar23 = (int *)(iVar12 + -1)" identifier = (cast_expression "(int *)(iVar12 + -1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -1)" ( (binary_expression "iVar12 + -1" identifier + number_literal) )))) ;) })) (if_statement "if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }" if (parenthesized_expression "(piVar25 == piVar23)" ( (binary_expression "piVar25 == piVar23" identifier == identifier) )) (compound_statement "{\n          piVar23 = (int *)0xffffffff;\n        }" { (expression_statement "piVar23 = (int *)0xffffffff;" (assignment_expression "piVar23 = (int *)0xffffffff" identifier = (cast_expression "(int *)0xffffffff" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) })) }))) (expression_statement "piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);" (assignment_expression "piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4)" identifier = (cast_expression "(int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3b8)" ( (pointer_expression "*(code *)PTR_FUN_0012a3b8" * (cast_expression "(code *)PTR_FUN_0012a3b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar21,0x804,uVar4)" ( identifier , number_literal , identifier ))))) ;) (expression_statement "iVar12 = uVar4 * 2;" (assignment_expression "iVar12 = uVar4 * 2" identifier = (binary_expression "uVar4 * 2" identifier * number_literal)) ;) (expression_statement "uVar4 = uVar4 + 1;" (assignment_expression "uVar4 = uVar4 + 1" identifier = (binary_expression "uVar4 + 1" identifier + number_literal)) ;) (expression_statement "piVar21[iVar12] = (int)piVar25;" (assignment_expression "piVar21[iVar12] = (int)piVar25" (subscript_expression "piVar21[iVar12]" identifier [ identifier ]) = (cast_expression "(int)piVar25" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "(piVar21 + iVar12)[1] = (int)piVar23;" (assignment_expression "(piVar21 + iVar12)[1] = (int)piVar23" (subscript_expression "(piVar21 + iVar12)[1]" (parenthesized_expression "(piVar21 + iVar12)" ( (binary_expression "piVar21 + iVar12" identifier + identifier) )) [ number_literal ]) = (cast_expression "(int)piVar23" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit "int cut_main(int argc,char **argv)\n\n{\n  char cVar1;\n  bool bVar2;\n  undefined *puVar3;\n  uint uVar4;\n  int iVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  char *pcVar8;\n  char *pcVar9;\n  int iVar10;\n  uint uVar11;\n  uint uVar12;\n  char *pcVar13;\n  int iVar14;\n  byte *pbVar15;\n  undefined4 *puVar16;\n  char *pcVar17;\n  byte *pbVar18;\n  byte *pbVar19;\n  char **ppcVar20;\n  int *piVar21;\n  undefined4 *puVar22;\n  int iVar23;\n  undefined4 *puVar24;\n  int iVar25;\n  uint uVar26;\n  int iVar27;\n  int *piVar28;\n  code *pcVar29;\n  undefined8 uVar30;\n  byte *pbStack_1ec;\n  undefined4 uStack_1e8;\n  undefined4 uStack_1e4;\n  int iStack_1e0;\n  undefined4 auStack_1dc [2];\n  undefined4 uStack_1d4;\n  undefined4 uStack_1d0;\n  undefined4 uStack_1cc;\n  undefined4 uStack_1b4;\n  undefined1 auStack_1a8 [72];\n  undefined4 uStack_160;\n  undefined4 uStack_104;\n  undefined4 uStack_100;\n  undefined4 uStack_fc;\n  undefined4 *puStack_f8;\n  undefined4 uStack_f4;\n  undefined2 uStack_f0;\n  undefined1 uStack_ee;\n  byte *pbStack_c4;\n  undefined4 uStack_c0;\n  int iStack_74;\n  int *piStack_70;\n  uint uStack_68;\n  int iStack_60;\n  undefined4 uStack_5c;\n  char *sopt;\n  char *ltok;\n  char *line;\n  char delimiter [2];\n  \n  uVar4 = (*(code *)PTR_getopt32_0012a30c)(argv,PTR_UINT_0012a18c + -0x1760,&sopt,&sopt);\n  if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f3c);\n  }\n  if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)(byte)*ltok;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (ltok[1] == '\0') goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f0c);\n  }\n  if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,\n                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f;\n        puVar6 = PTR_bb_error_msg_and_die_0012a1e4;\n        (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar6 + 0x78aa4);\n        pbStack_c4 = (byte *)*puVar24;\n        iStack_1e0 = 0;\n        uVar4 = (**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8);\n        iVar5 = **(int **)(puVar6 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);\n        }\n        iVar25 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }\n          iVar25 = 0;\n        }\nLAB_000b276c:\n        puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);\n        pbVar18 = (byte *)*puVar16;\n        uVar11 = uVar4 & 10;\n        pbVar19 = pbVar18;\n        uVar26 = uVar4;\n        if (pbVar18 == (byte *)0x0) goto LAB_000b2834;\n        pbVar15 = (byte *)(uint)*pbVar18;\n        if (pbVar15 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar19 = pbVar18 + 1;\n        pbVar18 = (byte *)puVar16[1];\n        puVar16 = puVar16 + 1;\n        if (uVar11 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar18 != (byte *)0x0) goto LAB_000b2a90;\n        uVar12 = uVar4 & 0x10;\n        pbStack_1ec = pbVar18;\nLAB_000b27b0:\n        pcVar29 = *(code **)(puVar6 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar12 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);\n        auStack_1dc[0] = uStack_160;\n        pbVar18 = pbVar19;\n        do {\n          puVar22 = auStack_1dc;\n          puVar16 = &uStack_1d4;\n          (**(code **)(puVar6 + 0x789dc))(puVar22);\n          if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          uStack_1d4 = 0;\n          uStack_1d0 = 0;\n          uStack_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);\n          if (iVar5 != 0) goto LAB_000b2874;\n          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);\n          pbVar19 = pbVar18;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar12 = uVar26 & 0x10;\n          if (uVar11 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          pbStack_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar29 = *(code **)(puVar6 + 0x78a84);\nLAB_000b2850:\n          (*pcVar29)(auStack_1dc);\n          pbVar18 = pbVar19;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }\nLAB_000b204c:\n  uVar4 = 0;\n  piVar21 = (int *)0x0;\n  iVar5 = *(int *)PTR_optind_0012b0ec;\n  puVar6 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x6a44;\n  puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n  do {\n    do {\n      ltok = (char *)(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6);\n      if (ltok == (char *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);\n        }\n        ppcVar20 = argv + iVar5;\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*ppcVar20 == (char *)0x0) {\n          ppcVar20 = ppcVar20 + -1;\n          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n        }\n        puVar7 = PTR_fopen_or_warn_stdin_0012a3f0;\n        puVar6 = PTR_xmalloc_fgetline_0012a2fc;\n        uStack_5c = 0;\n        do {\n          iVar5 = (*(code *)puVar7)();\n          if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }\n          ppcVar20 = ppcVar20 + 1;\n          if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }\n        } while( true );\n      }\n    } while (*ltok == '\0');\n    pcVar8 = (char *)(*(code *)PTR_strsep_0012afa0)(&ltok,puVar7);\n    if ((*pcVar8 == '\0') || (iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8), iVar25 == 0))\n    {\n      iVar25 = 0;\n      if (ltok != (char *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      iVar23 = -1;\n    }\n    else {\n      iVar25 = iVar25 + -1;\n      if (ltok == (char *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      iVar23 = 0x7fffffff;\n      if (*ltok != '\0') {\n        iVar23 = 0x7ffffffe;\n        iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();\n        if (iVar10 != 0) {\n          iVar23 = iVar10 + -1;\n        }\n        if (iVar25 == iVar23) {\n          iVar23 = -1;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_xrealloc_vector_helper_0012a3b8)(piVar21,0x804,uVar4);\n    iVar10 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar10] = iVar25;\n    (piVar21 + iVar10)[1] = iVar23;\n  } while( true );\n}\n\n" (function_definition "int cut_main(int argc,char **argv)\n\n{\n  char cVar1;\n  bool bVar2;\n  undefined *puVar3;\n  uint uVar4;\n  int iVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  char *pcVar8;\n  char *pcVar9;\n  int iVar10;\n  uint uVar11;\n  uint uVar12;\n  char *pcVar13;\n  int iVar14;\n  byte *pbVar15;\n  undefined4 *puVar16;\n  char *pcVar17;\n  byte *pbVar18;\n  byte *pbVar19;\n  char **ppcVar20;\n  int *piVar21;\n  undefined4 *puVar22;\n  int iVar23;\n  undefined4 *puVar24;\n  int iVar25;\n  uint uVar26;\n  int iVar27;\n  int *piVar28;\n  code *pcVar29;\n  undefined8 uVar30;\n  byte *pbStack_1ec;\n  undefined4 uStack_1e8;\n  undefined4 uStack_1e4;\n  int iStack_1e0;\n  undefined4 auStack_1dc [2];\n  undefined4 uStack_1d4;\n  undefined4 uStack_1d0;\n  undefined4 uStack_1cc;\n  undefined4 uStack_1b4;\n  undefined1 auStack_1a8 [72];\n  undefined4 uStack_160;\n  undefined4 uStack_104;\n  undefined4 uStack_100;\n  undefined4 uStack_fc;\n  undefined4 *puStack_f8;\n  undefined4 uStack_f4;\n  undefined2 uStack_f0;\n  undefined1 uStack_ee;\n  byte *pbStack_c4;\n  undefined4 uStack_c0;\n  int iStack_74;\n  int *piStack_70;\n  uint uStack_68;\n  int iStack_60;\n  undefined4 uStack_5c;\n  char *sopt;\n  char *ltok;\n  char *line;\n  char delimiter [2];\n  \n  uVar4 = (*(code *)PTR_getopt32_0012a30c)(argv,PTR_UINT_0012a18c + -0x1760,&sopt,&sopt);\n  if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f3c);\n  }\n  if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)(byte)*ltok;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (ltok[1] == '\0') goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f0c);\n  }\n  if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,\n                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f;\n        puVar6 = PTR_bb_error_msg_and_die_0012a1e4;\n        (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar6 + 0x78aa4);\n        pbStack_c4 = (byte *)*puVar24;\n        iStack_1e0 = 0;\n        uVar4 = (**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8);\n        iVar5 = **(int **)(puVar6 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);\n        }\n        iVar25 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }\n          iVar25 = 0;\n        }\nLAB_000b276c:\n        puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);\n        pbVar18 = (byte *)*puVar16;\n        uVar11 = uVar4 & 10;\n        pbVar19 = pbVar18;\n        uVar26 = uVar4;\n        if (pbVar18 == (byte *)0x0) goto LAB_000b2834;\n        pbVar15 = (byte *)(uint)*pbVar18;\n        if (pbVar15 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar19 = pbVar18 + 1;\n        pbVar18 = (byte *)puVar16[1];\n        puVar16 = puVar16 + 1;\n        if (uVar11 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar18 != (byte *)0x0) goto LAB_000b2a90;\n        uVar12 = uVar4 & 0x10;\n        pbStack_1ec = pbVar18;\nLAB_000b27b0:\n        pcVar29 = *(code **)(puVar6 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar12 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);\n        auStack_1dc[0] = uStack_160;\n        pbVar18 = pbVar19;\n        do {\n          puVar22 = auStack_1dc;\n          puVar16 = &uStack_1d4;\n          (**(code **)(puVar6 + 0x789dc))(puVar22);\n          if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          uStack_1d4 = 0;\n          uStack_1d0 = 0;\n          uStack_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);\n          if (iVar5 != 0) goto LAB_000b2874;\n          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);\n          pbVar19 = pbVar18;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar12 = uVar26 & 0x10;\n          if (uVar11 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          pbStack_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar29 = *(code **)(puVar6 + 0x78a84);\nLAB_000b2850:\n          (*pcVar29)(auStack_1dc);\n          pbVar18 = pbVar19;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }\nLAB_000b204c:\n  uVar4 = 0;\n  piVar21 = (int *)0x0;\n  iVar5 = *(int *)PTR_optind_0012b0ec;\n  puVar6 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x6a44;\n  puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n  do {\n    do {\n      ltok = (char *)(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6);\n      if (ltok == (char *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);\n        }\n        ppcVar20 = argv + iVar5;\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*ppcVar20 == (char *)0x0) {\n          ppcVar20 = ppcVar20 + -1;\n          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n        }\n        puVar7 = PTR_fopen_or_warn_stdin_0012a3f0;\n        puVar6 = PTR_xmalloc_fgetline_0012a2fc;\n        uStack_5c = 0;\n        do {\n          iVar5 = (*(code *)puVar7)();\n          if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }\n          ppcVar20 = ppcVar20 + 1;\n          if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }\n        } while( true );\n      }\n    } while (*ltok == '\0');\n    pcVar8 = (char *)(*(code *)PTR_strsep_0012afa0)(&ltok,puVar7);\n    if ((*pcVar8 == '\0') || (iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8), iVar25 == 0))\n    {\n      iVar25 = 0;\n      if (ltok != (char *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      iVar23 = -1;\n    }\n    else {\n      iVar25 = iVar25 + -1;\n      if (ltok == (char *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      iVar23 = 0x7fffffff;\n      if (*ltok != '\0') {\n        iVar23 = 0x7ffffffe;\n        iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();\n        if (iVar10 != 0) {\n          iVar23 = iVar10 + -1;\n        }\n        if (iVar25 == iVar23) {\n          iVar23 = -1;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_xrealloc_vector_helper_0012a3b8)(piVar21,0x804,uVar4);\n    iVar10 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar10] = iVar25;\n    (piVar21 + iVar10)[1] = iVar23;\n  } while( true );\n}" primitive_type (function_declarator "cut_main(int argc,char **argv)" identifier (parameter_list "(int argc,char **argv)" ( (parameter_declaration "int argc" primitive_type identifier) , (parameter_declaration "char **argv" primitive_type (pointer_declarator "**argv" * (pointer_declarator "*argv" * identifier))) ))) (compound_statement "{\n  char cVar1;\n  bool bVar2;\n  undefined *puVar3;\n  uint uVar4;\n  int iVar5;\n  undefined *puVar6;\n  undefined *puVar7;\n  char *pcVar8;\n  char *pcVar9;\n  int iVar10;\n  uint uVar11;\n  uint uVar12;\n  char *pcVar13;\n  int iVar14;\n  byte *pbVar15;\n  undefined4 *puVar16;\n  char *pcVar17;\n  byte *pbVar18;\n  byte *pbVar19;\n  char **ppcVar20;\n  int *piVar21;\n  undefined4 *puVar22;\n  int iVar23;\n  undefined4 *puVar24;\n  int iVar25;\n  uint uVar26;\n  int iVar27;\n  int *piVar28;\n  code *pcVar29;\n  undefined8 uVar30;\n  byte *pbStack_1ec;\n  undefined4 uStack_1e8;\n  undefined4 uStack_1e4;\n  int iStack_1e0;\n  undefined4 auStack_1dc [2];\n  undefined4 uStack_1d4;\n  undefined4 uStack_1d0;\n  undefined4 uStack_1cc;\n  undefined4 uStack_1b4;\n  undefined1 auStack_1a8 [72];\n  undefined4 uStack_160;\n  undefined4 uStack_104;\n  undefined4 uStack_100;\n  undefined4 uStack_fc;\n  undefined4 *puStack_f8;\n  undefined4 uStack_f4;\n  undefined2 uStack_f0;\n  undefined1 uStack_ee;\n  byte *pbStack_c4;\n  undefined4 uStack_c0;\n  int iStack_74;\n  int *piStack_70;\n  uint uStack_68;\n  int iStack_60;\n  undefined4 uStack_5c;\n  char *sopt;\n  char *ltok;\n  char *line;\n  char delimiter [2];\n  \n  uVar4 = (*(code *)PTR_getopt32_0012a30c)(argv,PTR_UINT_0012a18c + -0x1760,&sopt,&sopt);\n  if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f3c);\n  }\n  if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)(byte)*ltok;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (ltok[1] == '\0') goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f0c);\n  }\n  if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,\n                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f;\n        puVar6 = PTR_bb_error_msg_and_die_0012a1e4;\n        (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar6 + 0x78aa4);\n        pbStack_c4 = (byte *)*puVar24;\n        iStack_1e0 = 0;\n        uVar4 = (**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8);\n        iVar5 = **(int **)(puVar6 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);\n        }\n        iVar25 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }\n          iVar25 = 0;\n        }\nLAB_000b276c:\n        puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);\n        pbVar18 = (byte *)*puVar16;\n        uVar11 = uVar4 & 10;\n        pbVar19 = pbVar18;\n        uVar26 = uVar4;\n        if (pbVar18 == (byte *)0x0) goto LAB_000b2834;\n        pbVar15 = (byte *)(uint)*pbVar18;\n        if (pbVar15 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar19 = pbVar18 + 1;\n        pbVar18 = (byte *)puVar16[1];\n        puVar16 = puVar16 + 1;\n        if (uVar11 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar18 != (byte *)0x0) goto LAB_000b2a90;\n        uVar12 = uVar4 & 0x10;\n        pbStack_1ec = pbVar18;\nLAB_000b27b0:\n        pcVar29 = *(code **)(puVar6 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar12 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);\n        auStack_1dc[0] = uStack_160;\n        pbVar18 = pbVar19;\n        do {\n          puVar22 = auStack_1dc;\n          puVar16 = &uStack_1d4;\n          (**(code **)(puVar6 + 0x789dc))(puVar22);\n          if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          uStack_1d4 = 0;\n          uStack_1d0 = 0;\n          uStack_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);\n          if (iVar5 != 0) goto LAB_000b2874;\n          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);\n          pbVar19 = pbVar18;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar12 = uVar26 & 0x10;\n          if (uVar11 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          pbStack_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar29 = *(code **)(puVar6 + 0x78a84);\nLAB_000b2850:\n          (*pcVar29)(auStack_1dc);\n          pbVar18 = pbVar19;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }\nLAB_000b204c:\n  uVar4 = 0;\n  piVar21 = (int *)0x0;\n  iVar5 = *(int *)PTR_optind_0012b0ec;\n  puVar6 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x6a44;\n  puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n  do {\n    do {\n      ltok = (char *)(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6);\n      if (ltok == (char *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);\n        }\n        ppcVar20 = argv + iVar5;\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*ppcVar20 == (char *)0x0) {\n          ppcVar20 = ppcVar20 + -1;\n          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n        }\n        puVar7 = PTR_fopen_or_warn_stdin_0012a3f0;\n        puVar6 = PTR_xmalloc_fgetline_0012a2fc;\n        uStack_5c = 0;\n        do {\n          iVar5 = (*(code *)puVar7)();\n          if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }\n          ppcVar20 = ppcVar20 + 1;\n          if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }\n        } while( true );\n      }\n    } while (*ltok == '\0');\n    pcVar8 = (char *)(*(code *)PTR_strsep_0012afa0)(&ltok,puVar7);\n    if ((*pcVar8 == '\0') || (iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8), iVar25 == 0))\n    {\n      iVar25 = 0;\n      if (ltok != (char *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      iVar23 = -1;\n    }\n    else {\n      iVar25 = iVar25 + -1;\n      if (ltok == (char *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      iVar23 = 0x7fffffff;\n      if (*ltok != '\0') {\n        iVar23 = 0x7ffffffe;\n        iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();\n        if (iVar10 != 0) {\n          iVar23 = iVar10 + -1;\n        }\n        if (iVar25 == iVar23) {\n          iVar23 = -1;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_xrealloc_vector_helper_0012a3b8)(piVar21,0x804,uVar4);\n    iVar10 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar10] = iVar25;\n    (piVar21 + iVar10)[1] = iVar23;\n  } while( true );\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "bool bVar2;" primitive_type identifier ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "undefined *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "char *pcVar13;" primitive_type (pointer_declarator "*pcVar13" * identifier) ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "byte *pbVar15;" type_identifier (pointer_declarator "*pbVar15" * identifier) ;) (declaration "undefined4 *puVar16;" type_identifier (pointer_declarator "*puVar16" * identifier) ;) (declaration "char *pcVar17;" primitive_type (pointer_declarator "*pcVar17" * identifier) ;) (declaration "byte *pbVar18;" type_identifier (pointer_declarator "*pbVar18" * identifier) ;) (declaration "byte *pbVar19;" type_identifier (pointer_declarator "*pbVar19" * identifier) ;) (declaration "char **ppcVar20;" primitive_type (pointer_declarator "**ppcVar20" * (pointer_declarator "*ppcVar20" * identifier)) ;) (declaration "int *piVar21;" primitive_type (pointer_declarator "*piVar21" * identifier) ;) (declaration "undefined4 *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "int iVar23;" primitive_type identifier ;) (declaration "undefined4 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "int iVar25;" primitive_type identifier ;) (declaration "uint uVar26;" type_identifier identifier ;) (declaration "int iVar27;" primitive_type identifier ;) (declaration "int *piVar28;" primitive_type (pointer_declarator "*piVar28" * identifier) ;) (declaration "code *pcVar29;" type_identifier (pointer_declarator "*pcVar29" * identifier) ;) (declaration "undefined8 uVar30;" type_identifier identifier ;) (declaration "byte *pbStack_1ec;" type_identifier (pointer_declarator "*pbStack_1ec" * identifier) ;) (declaration "undefined4 uStack_1e8;" type_identifier identifier ;) (declaration "undefined4 uStack_1e4;" type_identifier identifier ;) (declaration "int iStack_1e0;" primitive_type identifier ;) (declaration "undefined4 auStack_1dc [2];" type_identifier (array_declarator "auStack_1dc [2]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_1d4;" type_identifier identifier ;) (declaration "undefined4 uStack_1d0;" type_identifier identifier ;) (declaration "undefined4 uStack_1cc;" type_identifier identifier ;) (declaration "undefined4 uStack_1b4;" type_identifier identifier ;) (declaration "undefined1 auStack_1a8 [72];" type_identifier (array_declarator "auStack_1a8 [72]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_160;" type_identifier identifier ;) (declaration "undefined4 uStack_104;" type_identifier identifier ;) (declaration "undefined4 uStack_100;" type_identifier identifier ;) (declaration "undefined4 uStack_fc;" type_identifier identifier ;) (declaration "undefined4 *puStack_f8;" type_identifier (pointer_declarator "*puStack_f8" * identifier) ;) (declaration "undefined4 uStack_f4;" type_identifier identifier ;) (declaration "undefined2 uStack_f0;" type_identifier identifier ;) (declaration "undefined1 uStack_ee;" type_identifier identifier ;) (declaration "byte *pbStack_c4;" type_identifier (pointer_declarator "*pbStack_c4" * identifier) ;) (declaration "undefined4 uStack_c0;" type_identifier identifier ;) (declaration "int iStack_74;" primitive_type identifier ;) (declaration "int *piStack_70;" primitive_type (pointer_declarator "*piStack_70" * identifier) ;) (declaration "uint uStack_68;" type_identifier identifier ;) (declaration "int iStack_60;" primitive_type identifier ;) (declaration "undefined4 uStack_5c;" type_identifier identifier ;) (declaration "char *sopt;" primitive_type (pointer_declarator "*sopt" * identifier) ;) (declaration "char *ltok;" primitive_type (pointer_declarator "*ltok" * identifier) ;) (declaration "char *line;" primitive_type (pointer_declarator "*line" * identifier) ;) (declaration "char delimiter [2];" primitive_type (array_declarator "delimiter [2]" identifier [ number_literal ]) ;) (expression_statement "uVar4 = (*(code *)PTR_getopt32_0012a30c)(argv,PTR_UINT_0012a18c + -0x1760,&sopt,&sopt);" (assignment_expression "uVar4 = (*(code *)PTR_getopt32_0012a30c)(argv,PTR_UINT_0012a18c + -0x1760,&sopt,&sopt)" identifier = (call_expression "(*(code *)PTR_getopt32_0012a30c)(argv,PTR_UINT_0012a18c + -0x1760,&sopt,&sopt)" (parenthesized_expression "(*(code *)PTR_getopt32_0012a30c)" ( (pointer_expression "*(code *)PTR_getopt32_0012a30c" * (cast_expression "(code *)PTR_getopt32_0012a30c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(argv,PTR_UINT_0012a18c + -0x1760,&sopt,&sopt)" ( identifier , (binary_expression "PTR_UINT_0012a18c + -0x1760" identifier + number_literal) , (pointer_expression "&sopt" & identifier) , (pointer_expression "&sopt" & identifier) )))) ;) (if_statement "if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f3c);\n  }" if (parenthesized_expression "((uVar4 & 7) == 0)" ( (binary_expression "(uVar4 & 7) == 0" (parenthesized_expression "(uVar4 & 7)" ( (binary_expression "uVar4 & 7" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f3c);\n  }" { (expression_statement "uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f3c);" (assignment_expression "uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f3c" identifier = (binary_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f3c" (call_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" (parenthesized_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)" ( (pointer_expression "*(code *)PTR_bb_error_msg_and_die_0012a1e4" * (cast_expression "(code *)PTR_bb_error_msg_and_die_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" ( (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier) ))) (ERROR "9__f_l_0012a1a8" number_literal identifier) + number_literal)) (ERROR ")" )) ;) })) (if_statement "if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)(byte)*ltok;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (ltok[1] == '\0') goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f0c);\n  }" if (parenthesized_expression "((uVar4 & 8) != 0)" ( (binary_expression "(uVar4 & 8) != 0" (parenthesized_expression "(uVar4 & 8)" ( (binary_expression "uVar4 & 8" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    puVar22 = (undefined4 *)(uint)(byte)*ltok;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (ltok[1] == '\0') goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f0c);\n  }" { (expression_statement "puVar22 = (undefined4 *)(uint)(byte)*ltok;" (assignment_expression "puVar22 = (undefined4 *)(uint)(byte)*ltok" identifier = (binary_expression "(undefined4 *)(uint)(byte)*ltok" (cast_expression "(undefined4 *)(uint)(byte)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier )))) * identifier)) ;) (if_statement "if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;" if (parenthesized_expression "(puVar22 == (undefined4 *)0x0)" ( (binary_expression "puVar22 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b2650;" goto statement_identifier ;)) (if_statement "if (ltok[1] == '\0') goto LAB_000b2678;" if (parenthesized_expression "(ltok[1] == '\0')" ( (binary_expression "ltok[1] == '\0'" (subscript_expression "ltok[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (goto_statement "goto LAB_000b2678;" goto statement_identifier ;)) (expression_statement "uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f0c);" (assignment_expression "uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f0c" identifier = (binary_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4f0c" (call_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                      (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" (parenthesized_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)" ( (pointer_expression "*(code *)PTR_bb_error_msg_and_die_0012a1e4" * (cast_expression "(code *)PTR_bb_error_msg_and_die_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" ( (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier) ))) (ERROR "9__f_l_0012a1a8" number_literal identifier) + number_literal)) (ERROR ")" )) ;) })) (if_statement "if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,\n                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f;\n        puVar6 = PTR_bb_error_msg_and_die_0012a1e4;\n        (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar6 + 0x78aa4);\n        pbStack_c4 = (byte *)*puVar24;\n        iStack_1e0 = 0;\n        uVar4 = (**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8);\n        iVar5 = **(int **)(puVar6 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);\n        }\n        iVar25 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }\n          iVar25 = 0;\n        }\nLAB_000b276c:\n        puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);\n        pbVar18 = (byte *)*puVar16;\n        uVar11 = uVar4 & 10;\n        pbVar19 = pbVar18;\n        uVar26 = uVar4;\n        if (pbVar18 == (byte *)0x0) goto LAB_000b2834;\n        pbVar15 = (byte *)(uint)*pbVar18;\n        if (pbVar15 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar19 = pbVar18 + 1;\n        pbVar18 = (byte *)puVar16[1];\n        puVar16 = puVar16 + 1;\n        if (uVar11 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar18 != (byte *)0x0) goto LAB_000b2a90;\n        uVar12 = uVar4 & 0x10;\n        pbStack_1ec = pbVar18;\nLAB_000b27b0:\n        pcVar29 = *(code **)(puVar6 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar12 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);\n        auStack_1dc[0] = uStack_160;\n        pbVar18 = pbVar19;\n        do {\n          puVar22 = auStack_1dc;\n          puVar16 = &uStack_1d4;\n          (**(code **)(puVar6 + 0x789dc))(puVar22);\n          if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          uStack_1d4 = 0;\n          uStack_1d0 = 0;\n          uStack_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);\n          if (iVar5 != 0) goto LAB_000b2874;\n          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);\n          pbVar19 = pbVar18;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar12 = uVar26 & 0x10;\n          if (uVar11 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          pbStack_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar29 = *(code **)(puVar6 + 0x78a84);\nLAB_000b2850:\n          (*pcVar29)(auStack_1dc);\n          pbVar18 = pbVar19;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }" if (parenthesized_expression "((uVar4 & 4) == 0)" ( (binary_expression "(uVar4 & 4) == 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,\n                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f;\n        puVar6 = PTR_bb_error_msg_and_die_0012a1e4;\n        (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar6 + 0x78aa4);\n        pbStack_c4 = (byte *)*puVar24;\n        iStack_1e0 = 0;\n        uVar4 = (**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8);\n        iVar5 = **(int **)(puVar6 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);\n        }\n        iVar25 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }\n          iVar25 = 0;\n        }\nLAB_000b276c:\n        puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);\n        pbVar18 = (byte *)*puVar16;\n        uVar11 = uVar4 & 10;\n        pbVar19 = pbVar18;\n        uVar26 = uVar4;\n        if (pbVar18 == (byte *)0x0) goto LAB_000b2834;\n        pbVar15 = (byte *)(uint)*pbVar18;\n        if (pbVar15 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar19 = pbVar18 + 1;\n        pbVar18 = (byte *)puVar16[1];\n        puVar16 = puVar16 + 1;\n        if (uVar11 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar18 != (byte *)0x0) goto LAB_000b2a90;\n        uVar12 = uVar4 & 0x10;\n        pbStack_1ec = pbVar18;\nLAB_000b27b0:\n        pcVar29 = *(code **)(puVar6 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar12 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);\n        auStack_1dc[0] = uStack_160;\n        pbVar18 = pbVar19;\n        do {\n          puVar22 = auStack_1dc;\n          puVar16 = &uStack_1d4;\n          (**(code **)(puVar6 + 0x789dc))(puVar22);\n          if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          uStack_1d4 = 0;\n          uStack_1d0 = 0;\n          uStack_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);\n          if (iVar5 != 0) goto LAB_000b2874;\n          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);\n          pbVar19 = pbVar18;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar12 = uVar26 & 0x10;\n          if (uVar11 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          pbStack_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar29 = *(code **)(puVar6 + 0x78a84);\nLAB_000b2850:\n          (*pcVar29)(auStack_1dc);\n          pbVar18 = pbVar19;\n        } while( true );\n      }\n    }\n  }" { (expression_statement "puVar22 = (undefined4 *)0x9;" (assignment_expression "puVar22 = (undefined4 *)0x9" identifier = (cast_expression "(undefined4 *)0x9" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,\n                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f;\n        puVar6 = PTR_bb_error_msg_and_die_0012a1e4;\n        (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar6 + 0x78aa4);\n        pbStack_c4 = (byte *)*puVar24;\n        iStack_1e0 = 0;\n        uVar4 = (**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8);\n        iVar5 = **(int **)(puVar6 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);\n        }\n        iVar25 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }\n          iVar25 = 0;\n        }\nLAB_000b276c:\n        puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);\n        pbVar18 = (byte *)*puVar16;\n        uVar11 = uVar4 & 10;\n        pbVar19 = pbVar18;\n        uVar26 = uVar4;\n        if (pbVar18 == (byte *)0x0) goto LAB_000b2834;\n        pbVar15 = (byte *)(uint)*pbVar18;\n        if (pbVar15 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar19 = pbVar18 + 1;\n        pbVar18 = (byte *)puVar16[1];\n        puVar16 = puVar16 + 1;\n        if (uVar11 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar18 != (byte *)0x0) goto LAB_000b2a90;\n        uVar12 = uVar4 & 0x10;\n        pbStack_1ec = pbVar18;\nLAB_000b27b0:\n        pcVar29 = *(code **)(puVar6 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar12 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);\n        auStack_1dc[0] = uStack_160;\n        pbVar18 = pbVar19;\n        do {\n          puVar22 = auStack_1dc;\n          puVar16 = &uStack_1d4;\n          (**(code **)(puVar6 + 0x789dc))(puVar22);\n          if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          uStack_1d4 = 0;\n          uStack_1d0 = 0;\n          uStack_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);\n          if (iVar5 != 0) goto LAB_000b2874;\n          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);\n          pbVar19 = pbVar18;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar12 = uVar26 & 0x10;\n          if (uVar11 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          pbStack_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar29 = *(code **)(puVar6 + 0x78a84);\nLAB_000b2850:\n          (*pcVar29)(auStack_1dc);\n          pbVar18 = pbVar19;\n        } while( true );\n      }\n    }" if (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      do {\n        do {\n          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,\n                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f;\n        puVar6 = PTR_bb_error_msg_and_die_0012a1e4;\n        (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar6 + 0x78aa4);\n        pbStack_c4 = (byte *)*puVar24;\n        iStack_1e0 = 0;\n        uVar4 = (**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8);\n        iVar5 = **(int **)(puVar6 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);\n        }\n        iVar25 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }\n          iVar25 = 0;\n        }\nLAB_000b276c:\n        puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);\n        pbVar18 = (byte *)*puVar16;\n        uVar11 = uVar4 & 10;\n        pbVar19 = pbVar18;\n        uVar26 = uVar4;\n        if (pbVar18 == (byte *)0x0) goto LAB_000b2834;\n        pbVar15 = (byte *)(uint)*pbVar18;\n        if (pbVar15 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar19 = pbVar18 + 1;\n        pbVar18 = (byte *)puVar16[1];\n        puVar16 = puVar16 + 1;\n        if (uVar11 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar18 != (byte *)0x0) goto LAB_000b2a90;\n        uVar12 = uVar4 & 0x10;\n        pbStack_1ec = pbVar18;\nLAB_000b27b0:\n        pcVar29 = *(code **)(puVar6 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar12 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);\n        auStack_1dc[0] = uStack_160;\n        pbVar18 = pbVar19;\n        do {\n          puVar22 = auStack_1dc;\n          puVar16 = &uStack_1d4;\n          (**(code **)(puVar6 + 0x789dc))(puVar22);\n          if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          uStack_1d4 = 0;\n          uStack_1d0 = 0;\n          uStack_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);\n          if (iVar5 != 0) goto LAB_000b2874;\n          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);\n          pbVar19 = pbVar18;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar12 = uVar26 & 0x10;\n          if (uVar11 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          pbStack_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar29 = *(code **)(puVar6 + 0x78a84);\nLAB_000b2850:\n          (*pcVar29)(auStack_1dc);\n          pbVar18 = pbVar19;\n        } while( true );\n      }\n    }" { (do_statement "do {\n        do {\n          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,\n                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);" do (compound_statement "{\n        do {\n          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,\n                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      }" { (do_statement "do {\n          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);" do (compound_statement "{\n          uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        }" { (expression_statement "uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);" (comma_expression "uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0,\n                             PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (assignment_expression "uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0" identifier = (binary_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4ee0" (call_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                            (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" (parenthesized_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)" ( (pointer_expression "*(code *)PTR_bb_error_msg_and_die_0012a1e4" * (cast_expression "(code *)PTR_bb_error_msg_and_die_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" ( (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier) ))) (ERROR "9__f_l_0012a1a8" number_literal identifier) + number_literal)) , (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier)) (ERROR ")9__f_l_0012a1a8 + 0x727f)" ) number_literal identifier + number_literal )) ;) (labeled_statement "LAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;" statement_identifier : (if_statement "if ((uVar4 & 4) != 0) goto LAB_000b204c;" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000b204c;" goto statement_identifier ;))) }) while (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) ;) (expression_statement "uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,\n                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f);" (comma_expression "uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0,\n                           PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (assignment_expression "uVar4 = (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0" identifier = (binary_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0" (call_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                          (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" (parenthesized_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)" ( (pointer_expression "*(code *)PTR_bb_error_msg_and_die_0012a1e4" * (cast_expression "(code *)PTR_bb_error_msg_and_die_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" ( (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier) ))) (ERROR "9__f_l_0012a1a8" number_literal identifier) + number_literal)) , (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier)) (ERROR ")9__f_l_0012a1a8 + 0x727f)" ) number_literal identifier + number_literal )) ;) (labeled_statement "LAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;" statement_identifier : (if_statement "if ((uVar4 & 4) != 0) goto LAB_000b204c;" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000b204c;" goto statement_identifier ;))) }) while (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) ;) (if_statement "if (puVar22 != (undefined4 *)0x9) {\n        puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f;\n        puVar6 = PTR_bb_error_msg_and_die_0012a1e4;\n        (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar6 + 0x78aa4);\n        pbStack_c4 = (byte *)*puVar24;\n        iStack_1e0 = 0;\n        uVar4 = (**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8);\n        iVar5 = **(int **)(puVar6 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);\n        }\n        iVar25 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }\n          iVar25 = 0;\n        }\nLAB_000b276c:\n        puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);\n        pbVar18 = (byte *)*puVar16;\n        uVar11 = uVar4 & 10;\n        pbVar19 = pbVar18;\n        uVar26 = uVar4;\n        if (pbVar18 == (byte *)0x0) goto LAB_000b2834;\n        pbVar15 = (byte *)(uint)*pbVar18;\n        if (pbVar15 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar19 = pbVar18 + 1;\n        pbVar18 = (byte *)puVar16[1];\n        puVar16 = puVar16 + 1;\n        if (uVar11 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar18 != (byte *)0x0) goto LAB_000b2a90;\n        uVar12 = uVar4 & 0x10;\n        pbStack_1ec = pbVar18;\nLAB_000b27b0:\n        pcVar29 = *(code **)(puVar6 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar12 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);\n        auStack_1dc[0] = uStack_160;\n        pbVar18 = pbVar19;\n        do {\n          puVar22 = auStack_1dc;\n          puVar16 = &uStack_1d4;\n          (**(code **)(puVar6 + 0x789dc))(puVar22);\n          if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          uStack_1d4 = 0;\n          uStack_1d0 = 0;\n          uStack_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);\n          if (iVar5 != 0) goto LAB_000b2874;\n          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);\n          pbVar19 = pbVar18;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar12 = uVar26 & 0x10;\n          if (uVar11 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          pbStack_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar29 = *(code **)(puVar6 + 0x78a84);\nLAB_000b2850:\n          (*pcVar29)(auStack_1dc);\n          pbVar18 = pbVar19;\n        } while( true );\n      }" if (parenthesized_expression "(puVar22 != (undefined4 *)0x9)" ( (binary_expression "puVar22 != (undefined4 *)0x9" identifier != (cast_expression "(undefined4 *)0x9" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f;\n        puVar6 = PTR_bb_error_msg_and_die_0012a1e4;\n        (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar6 + 0x78aa4);\n        pbStack_c4 = (byte *)*puVar24;\n        iStack_1e0 = 0;\n        uVar4 = (**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8);\n        iVar5 = **(int **)(puVar6 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);\n        }\n        iVar25 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }\n          iVar25 = 0;\n        }\nLAB_000b276c:\n        puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);\n        pbVar18 = (byte *)*puVar16;\n        uVar11 = uVar4 & 10;\n        pbVar19 = pbVar18;\n        uVar26 = uVar4;\n        if (pbVar18 == (byte *)0x0) goto LAB_000b2834;\n        pbVar15 = (byte *)(uint)*pbVar18;\n        if (pbVar15 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar19 = pbVar18 + 1;\n        pbVar18 = (byte *)puVar16[1];\n        puVar16 = puVar16 + 1;\n        if (uVar11 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar18 != (byte *)0x0) goto LAB_000b2a90;\n        uVar12 = uVar4 & 0x10;\n        pbStack_1ec = pbVar18;\nLAB_000b27b0:\n        pcVar29 = *(code **)(puVar6 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar12 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);\n        auStack_1dc[0] = uStack_160;\n        pbVar18 = pbVar19;\n        do {\n          puVar22 = auStack_1dc;\n          puVar16 = &uStack_1d4;\n          (**(code **)(puVar6 + 0x789dc))(puVar22);\n          if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          uStack_1d4 = 0;\n          uStack_1d0 = 0;\n          uStack_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);\n          if (iVar5 != 0) goto LAB_000b2874;\n          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);\n          pbVar19 = pbVar18;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar12 = uVar26 & 0x10;\n          if (uVar11 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          pbStack_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar29 = *(code **)(puVar6 + 0x78a84);\nLAB_000b2850:\n          (*pcVar29)(auStack_1dc);\n          pbVar18 = pbVar19;\n        } while( true );\n      }" { (expression_statement "puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f;" (binary_expression "puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + 0x727f" (assignment_expression "puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" identifier = (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier)) (ERROR ")9__f_l_0012a1a8" ) number_literal identifier) + number_literal) ;) (expression_statement "puVar6 = PTR_bb_error_msg_and_die_0012a1e4;" (assignment_expression "puVar6 = PTR_bb_error_msg_and_die_0012a1e4" identifier = identifier) ;) (expression_statement "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0);" (binary_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4eb0" (call_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                  (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" (parenthesized_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)" ( (pointer_expression "*(code *)PTR_bb_error_msg_and_die_0012a1e4" * (cast_expression "(code *)PTR_bb_error_msg_and_die_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" ( (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier) ))) (ERROR "9__f_l_0012a1a8" number_literal identifier) + number_literal) (ERROR ")" )) ;) (expression_statement "puVar24 = *(undefined4 **)(puVar6 + 0x78aa4);" (assignment_expression "puVar24 = *(undefined4 **)(puVar6 + 0x78aa4)" identifier = (pointer_expression "*(undefined4 **)(puVar6 + 0x78aa4)" * (cast_expression "(undefined4 **)(puVar6 + 0x78aa4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x78aa4)" ( (binary_expression "puVar6 + 0x78aa4" identifier + number_literal) ))))) ;) (expression_statement "pbStack_c4 = (byte *)*puVar24;" (assignment_expression "pbStack_c4 = (byte *)*puVar24" identifier = (cast_expression "(byte *)*puVar24" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar24" * identifier))) ;) (expression_statement "iStack_1e0 = 0;" (assignment_expression "iStack_1e0 = 0" identifier = number_literal) ;) (expression_statement "uVar4 = (**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8);" (assignment_expression "uVar4 = (**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8)" identifier = (call_expression "(**(code **)(puVar6 + 0x77c40))\n                          (puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8)" (parenthesized_expression "(**(code **)(puVar6 + 0x77c40))" ( (pointer_expression "**(code **)(puVar6 + 0x77c40)" * (pointer_expression "*(code **)(puVar6 + 0x77c40)" * (cast_expression "(code **)(puVar6 + 0x77c40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x77c40)" ( (binary_expression "puVar6 + 0x77c40" identifier + number_literal) ))))) )) (argument_list "(puVar7,*(int *)(puVar6 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar6 + 0x77b00) + 0x72ba,&pbStack_1ec,&pbStack_1ec,&uStack_1e4\n                           ,&iStack_1e0,&uStack_1e8)" ( identifier , (binary_expression "*(int *)(puVar6 + 0x77ae4) + -0x1730" (pointer_expression "*(int *)(puVar6 + 0x77ae4)" * (cast_expression "(int *)(puVar6 + 0x77ae4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77ae4)" ( (binary_expression "puVar6 + 0x77ae4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar6 + 0x77b00) + 0x72ba" (pointer_expression "*(int *)(puVar6 + 0x77b00)" * (cast_expression "(int *)(puVar6 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77b00)" ( (binary_expression "puVar6 + 0x77b00" identifier + number_literal) )))) + number_literal) , (pointer_expression "&pbStack_1ec" & identifier) , (pointer_expression "&pbStack_1ec" & identifier) , (pointer_expression "&uStack_1e4" & identifier) , (pointer_expression "&iStack_1e0" & identifier) , (pointer_expression "&uStack_1e8" & identifier) )))) ;) (expression_statement "iVar5 = **(int **)(puVar6 + 0x78a44);" (assignment_expression "iVar5 = **(int **)(puVar6 + 0x78a44)" identifier = (pointer_expression "**(int **)(puVar6 + 0x78a44)" * (pointer_expression "*(int **)(puVar6 + 0x78a44)" * (cast_expression "(int **)(puVar6 + 0x78a44)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x78a44)" ( (binary_expression "puVar6 + 0x78a44" identifier + number_literal) )))))) ;) (if_statement "if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);\n        }" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n          (**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);\n        }" { (expression_statement "(**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48);" (call_expression "(**(code **)(puVar6 + 0x78734))(*(int *)(puVar6 + 0x77b00) + -0x4e48)" (parenthesized_expression "(**(code **)(puVar6 + 0x78734))" ( (pointer_expression "**(code **)(puVar6 + 0x78734)" * (pointer_expression "*(code **)(puVar6 + 0x78734)" * (cast_expression "(code **)(puVar6 + 0x78734)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x78734)" ( (binary_expression "puVar6 + 0x78734" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar6 + 0x77b00) + -0x4e48)" ( (binary_expression "*(int *)(puVar6 + 0x77b00) + -0x4e48" (pointer_expression "*(int *)(puVar6 + 0x77b00)" * (cast_expression "(int *)(puVar6 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77b00)" ( (binary_expression "puVar6 + 0x77b00" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar25 = -1;" (assignment_expression "iVar25 = -1" identifier = number_literal) ;) (if_statement "if ((uVar4 & 0x20) != 0) {\n          if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }\n          iVar25 = 0;\n        }" if (parenthesized_expression "((uVar4 & 0x20) != 0)" ( (binary_expression "(uVar4 & 0x20) != 0" (parenthesized_expression "(uVar4 & 0x20)" ( (binary_expression "uVar4 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n          if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }\n          iVar25 = 0;\n        }" { (if_statement "if (iStack_1e0 != 0) {\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }" if (parenthesized_expression "(iStack_1e0 != 0)" ( (binary_expression "iStack_1e0 != 0" identifier != number_literal) )) (compound_statement "{\n            iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);\n            if (-1 < iVar25) goto LAB_000b276c;\n            (**(code **)(puVar6 + 0x77b34))();\n          }" { (expression_statement "iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e);" (assignment_expression "iVar25 = (**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e)" identifier = (call_expression "(**(code **)(puVar6 + 0x77e64))(*(int *)(puVar6 + 0x77b00) + 0x729e)" (parenthesized_expression "(**(code **)(puVar6 + 0x77e64))" ( (pointer_expression "**(code **)(puVar6 + 0x77e64)" * (pointer_expression "*(code **)(puVar6 + 0x77e64)" * (cast_expression "(code **)(puVar6 + 0x77e64)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x77e64)" ( (binary_expression "puVar6 + 0x77e64" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar6 + 0x77b00) + 0x729e)" ( (binary_expression "*(int *)(puVar6 + 0x77b00) + 0x729e" (pointer_expression "*(int *)(puVar6 + 0x77b00)" * (cast_expression "(int *)(puVar6 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77b00)" ( (binary_expression "puVar6 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (-1 < iVar25) goto LAB_000b276c;" if (parenthesized_expression "(-1 < iVar25)" ( (binary_expression "-1 < iVar25" number_literal < identifier) )) (goto_statement "goto LAB_000b276c;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar6 + 0x77b34))();" (call_expression "(**(code **)(puVar6 + 0x77b34))()" (parenthesized_expression "(**(code **)(puVar6 + 0x77b34))" ( (pointer_expression "**(code **)(puVar6 + 0x77b34)" * (pointer_expression "*(code **)(puVar6 + 0x77b34)" * (cast_expression "(code **)(puVar6 + 0x77b34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x77b34)" ( (binary_expression "puVar6 + 0x77b34" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) })) (expression_statement "iVar25 = 0;" (assignment_expression "iVar25 = 0" identifier = number_literal) ;) })) (labeled_statement "LAB_000b276c:\n        puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);" statement_identifier : (expression_statement "puVar16 = (undefined4 *)(puVar7 + iVar5 * 4);" (assignment_expression "puVar16 = (undefined4 *)(puVar7 + iVar5 * 4)" identifier = (cast_expression "(undefined4 *)(puVar7 + iVar5 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar7 + iVar5 * 4)" ( (binary_expression "puVar7 + iVar5 * 4" identifier + (binary_expression "iVar5 * 4" identifier * number_literal)) )))) ;)) (expression_statement "pbVar18 = (byte *)*puVar16;" (assignment_expression "pbVar18 = (byte *)*puVar16" identifier = (cast_expression "(byte *)*puVar16" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar16" * identifier))) ;) (expression_statement "uVar11 = uVar4 & 10;" (assignment_expression "uVar11 = uVar4 & 10" identifier = (binary_expression "uVar4 & 10" identifier & number_literal)) ;) (expression_statement "pbVar19 = pbVar18;" (assignment_expression "pbVar19 = pbVar18" identifier = identifier) ;) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;) (if_statement "if (pbVar18 == (byte *)0x0) goto LAB_000b2834;" if (parenthesized_expression "(pbVar18 == (byte *)0x0)" ( (binary_expression "pbVar18 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b2834;" goto statement_identifier ;)) (expression_statement "pbVar15 = (byte *)(uint)*pbVar18;" (assignment_expression "pbVar15 = (byte *)(uint)*pbVar18" identifier = (binary_expression "(byte *)(uint)*pbVar18" (cast_expression "(byte *)(uint)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uint)" ( identifier ))) * identifier)) ;) (if_statement "if (pbVar15 != &DAT_0000002b) goto LAB_000b2a78;" if (parenthesized_expression "(pbVar15 != &DAT_0000002b)" ( (binary_expression "pbVar15 != &DAT_0000002b" identifier != (pointer_expression "&DAT_0000002b" & identifier)) )) (goto_statement "goto LAB_000b2a78;" goto statement_identifier ;)) (expression_statement "pbVar19 = pbVar18 + 1;" (assignment_expression "pbVar19 = pbVar18 + 1" identifier = (binary_expression "pbVar18 + 1" identifier + number_literal)) ;) (expression_statement "pbVar18 = (byte *)puVar16[1];" (assignment_expression "pbVar18 = (byte *)puVar16[1]" identifier = (cast_expression "(byte *)puVar16[1]" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar16[1]" identifier [ number_literal ]))) ;) (expression_statement "puVar16 = puVar16 + 1;" (assignment_expression "puVar16 = puVar16 + 1" identifier = (binary_expression "puVar16 + 1" identifier + number_literal)) ;) (if_statement "if (uVar11 != 0) goto LAB_000b2b34;" if (parenthesized_expression "(uVar11 != 0)" ( (binary_expression "uVar11 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b2b34;" goto statement_identifier ;)) (expression_statement "uVar26 = uVar4 | 2;" (assignment_expression "uVar26 = uVar4 | 2" identifier = (binary_expression "uVar4 | 2" identifier | number_literal)) ;) (if_statement "if (pbVar18 != (byte *)0x0) goto LAB_000b2a90;" if (parenthesized_expression "(pbVar18 != (byte *)0x0)" ( (binary_expression "pbVar18 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b2a90;" goto statement_identifier ;)) (expression_statement "uVar12 = uVar4 & 0x10;" (assignment_expression "uVar12 = uVar4 & 0x10" identifier = (binary_expression "uVar4 & 0x10" identifier & number_literal)) ;) (expression_statement "pbStack_1ec = pbVar18;" (assignment_expression "pbStack_1ec = pbVar18" identifier = identifier) ;) (labeled_statement "LAB_000b27b0:\n        pcVar29 = *(code **)(puVar6 + 0x78a84);" statement_identifier : (expression_statement "pcVar29 = *(code **)(puVar6 + 0x78a84);" (assignment_expression "pcVar29 = *(code **)(puVar6 + 0x78a84)" identifier = (pointer_expression "*(code **)(puVar6 + 0x78a84)" * (cast_expression "(code **)(puVar6 + 0x78a84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x78a84)" ( (binary_expression "puVar6 + 0x78a84" identifier + number_literal) ))))) ;)) (expression_statement "uVar4 = uVar26;" (assignment_expression "uVar4 = uVar26" identifier = identifier) ;) (if_statement "if (uVar12 == 0) goto LAB_000b2850;" if (parenthesized_expression "(uVar12 == 0)" ( (binary_expression "uVar12 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000b2850;" goto statement_identifier ;)) (labeled_statement "LAB_000b27b8:\n        (**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);" statement_identifier : (expression_statement "(**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8);" (call_expression "(**(code **)(puVar6 + 0x782a8))(uStack_1e4,auStack_1a8)" (parenthesized_expression "(**(code **)(puVar6 + 0x782a8))" ( (pointer_expression "**(code **)(puVar6 + 0x782a8)" * (pointer_expression "*(code **)(puVar6 + 0x782a8)" * (cast_expression "(code **)(puVar6 + 0x782a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x782a8)" ( (binary_expression "puVar6 + 0x782a8" identifier + number_literal) ))))) )) (argument_list "(uStack_1e4,auStack_1a8)" ( identifier , identifier ))) ;)) (expression_statement "auStack_1dc[0] = uStack_160;" (assignment_expression "auStack_1dc[0] = uStack_160" (subscript_expression "auStack_1dc[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pbVar18 = pbVar19;" (assignment_expression "pbVar18 = pbVar19" identifier = identifier) ;) (do_statement "do {\n          puVar22 = auStack_1dc;\n          puVar16 = &uStack_1d4;\n          (**(code **)(puVar6 + 0x789dc))(puVar22);\n          if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          uStack_1d4 = 0;\n          uStack_1d0 = 0;\n          uStack_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);\n          if (iVar5 != 0) goto LAB_000b2874;\n          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);\n          pbVar19 = pbVar18;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar12 = uVar26 & 0x10;\n          if (uVar11 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          pbStack_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar29 = *(code **)(puVar6 + 0x78a84);\nLAB_000b2850:\n          (*pcVar29)(auStack_1dc);\n          pbVar18 = pbVar19;\n        } while( true );" do (compound_statement "{\n          puVar22 = auStack_1dc;\n          puVar16 = &uStack_1d4;\n          (**(code **)(puVar6 + 0x789dc))(puVar22);\n          if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          uStack_1d4 = 0;\n          uStack_1d0 = 0;\n          uStack_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);\n          if (iVar5 != 0) goto LAB_000b2874;\n          uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);\n          pbVar19 = pbVar18;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar12 = uVar26 & 0x10;\n          if (uVar11 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          pbStack_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar29 = *(code **)(puVar6 + 0x78a84);\nLAB_000b2850:\n          (*pcVar29)(auStack_1dc);\n          pbVar18 = pbVar19;\n        }" { (expression_statement "puVar22 = auStack_1dc;" (assignment_expression "puVar22 = auStack_1dc" identifier = identifier) ;) (expression_statement "puVar16 = &uStack_1d4;" (assignment_expression "puVar16 = &uStack_1d4" identifier = (pointer_expression "&uStack_1d4" & identifier)) ;) (expression_statement "(**(code **)(puVar6 + 0x789dc))(puVar22);" (call_expression "(**(code **)(puVar6 + 0x789dc))(puVar22)" (parenthesized_expression "(**(code **)(puVar6 + 0x789dc))" ( (pointer_expression "**(code **)(puVar6 + 0x789dc)" * (pointer_expression "*(code **)(puVar6 + 0x789dc)" * (cast_expression "(code **)(puVar6 + 0x789dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x789dc)" ( (binary_expression "puVar6 + 0x789dc" identifier + number_literal) ))))) )) (argument_list "(puVar22)" ( identifier ))) ;) (if_statement "if (pbStack_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }" if (parenthesized_expression "(pbStack_1ec == (byte *)0x0)" ( (binary_expression "pbStack_1ec == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);\n            if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }\n            puVar16 = (undefined4 *)&DAT_00000400;\n            (**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));\n            if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar15 = pbStack_c4;\n            uVar11 = (**(code **)(puVar6 + 0x78a20))();\nLAB_000b2a78:\n            pbVar19 = pbVar18;\n            uVar26 = uVar4;\n            if (uVar11 != 0) goto LAB_000b2b3c;\n            pbVar19 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            pbStack_1ec = pbVar18;\n            iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);\n            pbVar15 = pbVar18 + iVar5;\n            uVar30 = CONCAT44(iVar5,(uint)*pbVar15);\n            puVar22 = puVar16;\n            if (*pbVar15 != 0) goto LAB_000b2b48;\n            uVar11 = iVar5 - 8;\n            uVar4 = uVar11 & 1;\n            if (uVar11 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }" { (labeled_statement "LAB_000b28d0:\n            uVar26 = uVar4;" statement_identifier : (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;)) (if_statement "if (pbVar18 == (byte *)0x0) {\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" if (parenthesized_expression "(pbVar18 == (byte *)0x0)" ( (binary_expression "pbVar18 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              iVar5 = *(int *)(puVar6 + 0x77b00);\n              if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar23 = *(int *)(puVar6 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);\n            }" { (expression_statement "iVar5 = *(int *)(puVar6 + 0x77b00);" (assignment_expression "iVar5 = *(int *)(puVar6 + 0x77b00)" identifier = (pointer_expression "*(int *)(puVar6 + 0x77b00)" * (cast_expression "(int *)(puVar6 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77b00)" ( (binary_expression "puVar6 + 0x77b00" identifier + number_literal) ))))) ;) (if_statement "if (iVar25 != -1) {\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }" if (parenthesized_expression "(iVar25 != -1)" ( (binary_expression "iVar25 != -1" identifier != number_literal) )) (compound_statement "{\n                iVar23 = iVar25 * 3;\n                iVar10 = iVar23 + 8;\n                puVar16 = *(undefined4 **)(iVar5 + -0x4e18);\n                uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);\n                uStack_100 = *(undefined4 *)(iVar5 + -20000);\n                uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);\n                puStack_f8 = puVar16;\n                uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);\n                iVar5 = iVar10;\n                if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;\n                *(undefined1 *)((int)&uStack_104 + iVar5) = 0;\n                goto LAB_000b29c0;\n              }" { (expression_statement "iVar23 = iVar25 * 3;" (assignment_expression "iVar23 = iVar25 * 3" identifier = (binary_expression "iVar25 * 3" identifier * number_literal)) ;) (expression_statement "iVar10 = iVar23 + 8;" (assignment_expression "iVar10 = iVar23 + 8" identifier = (binary_expression "iVar23 + 8" identifier + number_literal)) ;) (expression_statement "puVar16 = *(undefined4 **)(iVar5 + -0x4e18);" (assignment_expression "puVar16 = *(undefined4 **)(iVar5 + -0x4e18)" identifier = (pointer_expression "*(undefined4 **)(iVar5 + -0x4e18)" * (cast_expression "(undefined4 **)(iVar5 + -0x4e18)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar5 + -0x4e18)" ( (binary_expression "iVar5 + -0x4e18" identifier + number_literal) ))))) ;) (expression_statement "uStack_104 = *(undefined4 *)(iVar5 + -0x4e24);" (assignment_expression "uStack_104 = *(undefined4 *)(iVar5 + -0x4e24)" identifier = (pointer_expression "*(undefined4 *)(iVar5 + -0x4e24)" * (cast_expression "(undefined4 *)(iVar5 + -0x4e24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar5 + -0x4e24)" ( (binary_expression "iVar5 + -0x4e24" identifier + number_literal) ))))) ;) (expression_statement "uStack_100 = *(undefined4 *)(iVar5 + -20000);" (assignment_expression "uStack_100 = *(undefined4 *)(iVar5 + -20000)" identifier = (pointer_expression "*(undefined4 *)(iVar5 + -20000)" * (cast_expression "(undefined4 *)(iVar5 + -20000)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar5 + -20000)" ( (binary_expression "iVar5 + -20000" identifier + number_literal) ))))) ;) (expression_statement "uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c);" (assignment_expression "uStack_fc = *(undefined4 *)(iVar5 + -0x4e1c)" identifier = (pointer_expression "*(undefined4 *)(iVar5 + -0x4e1c)" * (cast_expression "(undefined4 *)(iVar5 + -0x4e1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar5 + -0x4e1c)" ( (binary_expression "iVar5 + -0x4e1c" identifier + number_literal) ))))) ;) (expression_statement "puStack_f8 = puVar16;" (assignment_expression "puStack_f8 = puVar16" identifier = identifier) ;) (expression_statement "uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_);" (assignment_expression "uStack_f4 = CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_)" identifier = (call_expression "CONCAT22(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_)" identifier (argument_list "(*(undefined2 *)(iVar5 + -0x4e14),uStack_f4._2_2_)" ( (pointer_expression "*(undefined2 *)(iVar5 + -0x4e14)" * (cast_expression "(undefined2 *)(iVar5 + -0x4e14)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar5 + -0x4e14)" ( (binary_expression "iVar5 + -0x4e14" identifier + number_literal) )))) , (field_expression "uStack_f4._2_2_" identifier . field_identifier) )))) ;) (expression_statement "iVar5 = iVar10;" (assignment_expression "iVar5 = iVar10" identifier = identifier) ;) (if_statement "if (iVar25 != 0) {\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }" if (parenthesized_expression "(iVar25 != 0)" ( (binary_expression "iVar25 != 0" identifier != number_literal) )) (compound_statement "{\n                  iVar27 = iVar23 + 9;\n                  iVar5 = iVar23 + 10;\n                  goto LAB_000b2988;\n                }" { (expression_statement "iVar27 = iVar23 + 9;" (assignment_expression "iVar27 = iVar23 + 9" identifier = (binary_expression "iVar23 + 9" identifier + number_literal)) ;) (expression_statement "iVar5 = iVar23 + 10;" (assignment_expression "iVar5 = iVar23 + 10" identifier = (binary_expression "iVar23 + 10" identifier + number_literal)) ;) (goto_statement "goto LAB_000b2988;" goto statement_identifier ;) })) (labeled_statement "LAB_000b29b4:\n                pbVar18 = (byte *)&uStack_104;" statement_identifier : (expression_statement "pbVar18 = (byte *)&uStack_104;" (assignment_expression "pbVar18 = (byte *)&uStack_104" identifier = (cast_expression "(byte *)&uStack_104" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_104" & identifier))) ;)) (expression_statement "*(undefined1 *)((int)&uStack_104 + iVar5) = 0;" (assignment_expression "*(undefined1 *)((int)&uStack_104 + iVar5) = 0" (pointer_expression "*(undefined1 *)((int)&uStack_104 + iVar5)" * (cast_expression "(undefined1 *)((int)&uStack_104 + iVar5)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&uStack_104 + iVar5)" ( (binary_expression "(int)&uStack_104 + iVar5" (cast_expression "(int)&uStack_104" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&uStack_104" & identifier)) + identifier) )))) = number_literal) ;) (goto_statement "goto LAB_000b29c0;" goto statement_identifier ;) })) (expression_statement "iVar23 = *(int *)(puVar6 + 0x77b00);" (assignment_expression "iVar23 = *(int *)(puVar6 + 0x77b00)" identifier = (pointer_expression "*(int *)(puVar6 + 0x77b00)" * (cast_expression "(int *)(puVar6 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77b00)" ( (binary_expression "puVar6 + 0x77b00" identifier + number_literal) ))))) ;) (if_statement "if ((uVar4 & 1) != 0) {\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }" if (parenthesized_expression "((uVar4 & 1) != 0)" ( (binary_expression "(uVar4 & 1) != 0" (parenthesized_expression "(uVar4 & 1)" ( (binary_expression "uVar4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                iVar5 = 0x18;\n                iVar27 = 0x17;\n                iVar10 = 0x16;\n                uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);\n                uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);\n                uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);\n                puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);\n                uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);\n                uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);\n                uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);\n                *(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;\n                *(char *)((int)&uStack_104 + iVar27) = (char)uVar26;\n                goto LAB_000b29b4;\n              }" { (expression_statement "iVar5 = 0x18;" (assignment_expression "iVar5 = 0x18" identifier = number_literal) ;) (expression_statement "iVar27 = 0x17;" (assignment_expression "iVar27 = 0x17" identifier = number_literal) ;) (expression_statement "iVar10 = 0x16;" (assignment_expression "iVar10 = 0x16" identifier = number_literal) ;) (expression_statement "uStack_104 = *(undefined4 *)(iVar23 + -0x4e10);" (assignment_expression "uStack_104 = *(undefined4 *)(iVar23 + -0x4e10)" identifier = (pointer_expression "*(undefined4 *)(iVar23 + -0x4e10)" * (cast_expression "(undefined4 *)(iVar23 + -0x4e10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x4e10)" ( (binary_expression "iVar23 + -0x4e10" identifier + number_literal) ))))) ;) (expression_statement "uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c);" (assignment_expression "uStack_100 = *(undefined4 *)(iVar23 + -0x4e0c)" identifier = (pointer_expression "*(undefined4 *)(iVar23 + -0x4e0c)" * (cast_expression "(undefined4 *)(iVar23 + -0x4e0c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x4e0c)" ( (binary_expression "iVar23 + -0x4e0c" identifier + number_literal) ))))) ;) (expression_statement "uStack_fc = *(undefined4 *)(iVar23 + -0x4e08);" (assignment_expression "uStack_fc = *(undefined4 *)(iVar23 + -0x4e08)" identifier = (pointer_expression "*(undefined4 *)(iVar23 + -0x4e08)" * (cast_expression "(undefined4 *)(iVar23 + -0x4e08)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x4e08)" ( (binary_expression "iVar23 + -0x4e08" identifier + number_literal) ))))) ;) (expression_statement "puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04);" (assignment_expression "puStack_f8 = *(undefined4 **)(iVar23 + -0x4e04)" identifier = (pointer_expression "*(undefined4 **)(iVar23 + -0x4e04)" * (cast_expression "(undefined4 **)(iVar23 + -0x4e04)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar23 + -0x4e04)" ( (binary_expression "iVar23 + -0x4e04" identifier + number_literal) ))))) ;) (expression_statement "uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00);" (assignment_expression "uStack_f4 = *(undefined4 *)(iVar23 + -0x4e00)" identifier = (pointer_expression "*(undefined4 *)(iVar23 + -0x4e00)" * (cast_expression "(undefined4 *)(iVar23 + -0x4e00)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x4e00)" ( (binary_expression "iVar23 + -0x4e00" identifier + number_literal) ))))) ;) (expression_statement "uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc);" (assignment_expression "uStack_f0 = *(undefined2 *)(iVar23 + -0x4dfc)" identifier = (pointer_expression "*(undefined2 *)(iVar23 + -0x4dfc)" * (cast_expression "(undefined2 *)(iVar23 + -0x4dfc)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x4dfc)" ( (binary_expression "iVar23 + -0x4dfc" identifier + number_literal) ))))) ;) (expression_statement "uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa);" (assignment_expression "uStack_ee = *(undefined1 *)(iVar23 + -0x4dfa)" identifier = (pointer_expression "*(undefined1 *)(iVar23 + -0x4dfa)" * (cast_expression "(undefined1 *)(iVar23 + -0x4dfa)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + -0x4dfa)" ( (binary_expression "iVar23 + -0x4dfa" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000b2988:\n                uVar26 = 0x7a;" statement_identifier : (expression_statement "uVar26 = 0x7a;" (assignment_expression "uVar26 = 0x7a" identifier = number_literal) ;)) (if_statement "if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                  uVar26 = 0x5a;\n                }" { (expression_statement "uVar26 = 0x5a;" (assignment_expression "uVar26 = 0x5a" identifier = number_literal) ;) })) (expression_statement "puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27);" (assignment_expression "puVar16 = (undefined4 *)((int)&uStack_c0 + iVar27)" identifier = (cast_expression "(undefined4 *)((int)&uStack_c0 + iVar27)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&uStack_c0 + iVar27)" ( (binary_expression "(int)&uStack_c0 + iVar27" (cast_expression "(int)&uStack_c0" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&uStack_c0" & identifier)) + identifier) )))) ;) (expression_statement "*(undefined1 *)((int)&uStack_104 + iVar10) = 0x25;" (assignment_expression "*(undefined1 *)((int)&uStack_104 + iVar10) = 0x25" (pointer_expression "*(undefined1 *)((int)&uStack_104 + iVar10)" * (cast_expression "(undefined1 *)((int)&uStack_104 + iVar10)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&uStack_104 + iVar10)" ( (binary_expression "(int)&uStack_104 + iVar10" (cast_expression "(int)&uStack_104" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&uStack_104" & identifier)) + identifier) )))) = number_literal) ;) (expression_statement "*(char *)((int)&uStack_104 + iVar27) = (char)uVar26;" (assignment_expression "*(char *)((int)&uStack_104 + iVar27) = (char)uVar26" (pointer_expression "*(char *)((int)&uStack_104 + iVar27)" * (cast_expression "(char *)((int)&uStack_104 + iVar27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&uStack_104 + iVar27)" ( (binary_expression "(int)&uStack_104 + iVar27" (cast_expression "(int)&uStack_104" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&uStack_104" & identifier)) + identifier) )))) = (cast_expression "(char)uVar26" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (goto_statement "goto LAB_000b29b4;" goto statement_identifier ;) })) (expression_statement "pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74);" (assignment_expression "pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74)" identifier = (cast_expression "(byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e74)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar6 + 0x77b00) + -0x4e74)" ( (binary_expression "*(int *)(puVar6 + 0x77b00) + -0x4e74" (pointer_expression "*(int *)(puVar6 + 0x77b00)" * (cast_expression "(int *)(puVar6 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77b00)" ( (binary_expression "puVar6 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" else (compound_statement "{\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" { (labeled_statement "LAB_000b29c0:\n              uVar4 = uVar26;" statement_identifier : (expression_statement "uVar4 = uVar26;" (assignment_expression "uVar4 = uVar26" identifier = identifier) ;)) (if_statement "if (*pbVar18 == 0) {\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }" if (parenthesized_expression "(*pbVar18 == 0)" ( (binary_expression "*pbVar18 == 0" (pointer_expression "*pbVar18" * identifier) == number_literal) )) (compound_statement "{\n                **(undefined1 **)(puVar6 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }" { (expression_statement "**(undefined1 **)(puVar6 + 0x77c9c) = 0;" (assignment_expression "**(undefined1 **)(puVar6 + 0x77c9c) = 0" (pointer_expression "**(undefined1 **)(puVar6 + 0x77c9c)" * (pointer_expression "*(undefined1 **)(puVar6 + 0x77c9c)" * (cast_expression "(undefined1 **)(puVar6 + 0x77c9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x77c9c)" ( (binary_expression "puVar6 + 0x77c9c" identifier + number_literal) ))))) = number_literal) ;) (goto_statement "goto LAB_000b29d0;" goto statement_identifier ;) })) }))) (expression_statement "iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8);" (assignment_expression "iVar5 = (**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8)" identifier = (call_expression "(**(code **)(puVar6 + 0x77b48))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8)" (parenthesized_expression "(**(code **)(puVar6 + 0x77b48))" ( (pointer_expression "**(code **)(puVar6 + 0x77b48)" * (pointer_expression "*(code **)(puVar6 + 0x77b48)" * (cast_expression "(code **)(puVar6 + 0x77b48)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x77b48)" ( (binary_expression "puVar6 + 0x77b48" identifier + number_literal) ))))) )) (argument_list "(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4df8)" ( identifier , (binary_expression "*(int *)(puVar6 + 0x77b00) + -0x4df8" (pointer_expression "*(int *)(puVar6 + 0x77b00)" * (cast_expression "(int *)(puVar6 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77b00)" ( (binary_expression "puVar6 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar5 != 0) {\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (compound_statement "{\n              pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);\n            }" { (expression_statement "pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c);" (assignment_expression "pbVar18 = (byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c)" identifier = (cast_expression "(byte *)(*(int *)(puVar6 + 0x77b00) + -0x4e5c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar6 + 0x77b00) + -0x4e5c)" ( (binary_expression "*(int *)(puVar6 + 0x77b00) + -0x4e5c" (pointer_expression "*(int *)(puVar6 + 0x77b00)" * (cast_expression "(int *)(puVar6 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77b00)" ( (binary_expression "puVar6 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) })) (expression_statement "puVar16 = (undefined4 *)&DAT_00000400;" (assignment_expression "puVar16 = (undefined4 *)&DAT_00000400" identifier = (cast_expression "(undefined4 *)&DAT_00000400" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000400" & identifier))) ;) (expression_statement "(**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4);" (call_expression "(**(code **)(puVar6 + 0x788cc))\n                      (*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4)" (parenthesized_expression "(**(code **)(puVar6 + 0x788cc))" ( (pointer_expression "**(code **)(puVar6 + 0x788cc)" * (pointer_expression "*(code **)(puVar6 + 0x788cc)" * (cast_expression "(code **)(puVar6 + 0x788cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x788cc)" ( (binary_expression "puVar6 + 0x788cc" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar6 + 0x77c9c),0x400,pbVar18,&uStack_1d4)" ( (pointer_expression "*(undefined4 *)(puVar6 + 0x77c9c)" * (cast_expression "(undefined4 *)(puVar6 + 0x77c9c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77c9c)" ( (binary_expression "puVar6 + 0x77c9c" identifier + number_literal) )))) , number_literal , identifier , (pointer_expression "&uStack_1d4" & identifier) ))) ;) (labeled_statement "LAB_000b29d0:\n            (**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));" statement_identifier : (expression_statement "(**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c));" (call_expression "(**(code **)(puVar6 + 0x7890c))(*(undefined4 *)(puVar6 + 0x77c9c))" (parenthesized_expression "(**(code **)(puVar6 + 0x7890c))" ( (pointer_expression "**(code **)(puVar6 + 0x7890c)" * (pointer_expression "*(code **)(puVar6 + 0x7890c)" * (cast_expression "(code **)(puVar6 + 0x7890c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x7890c)" ( (binary_expression "puVar6 + 0x7890c" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar6 + 0x77c9c))" ( (pointer_expression "*(undefined4 *)(puVar6 + 0x77c9c)" * (cast_expression "(undefined4 *)(puVar6 + 0x77c9c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77c9c)" ( (binary_expression "puVar6 + 0x77c9c" identifier + number_literal) )))) ))) ;)) (if_statement "if (pbStack_c4 == (byte *)*puVar24) {\n              return 0;\n            }" if (parenthesized_expression "(pbStack_c4 == (byte *)*puVar24)" ( (binary_expression "pbStack_c4 == (byte *)*puVar24" identifier == (cast_expression "(byte *)*puVar24" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar24" * identifier))) )) (compound_statement "{\n              return 0;\n            }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "pbVar15 = pbStack_c4;" (assignment_expression "pbVar15 = pbStack_c4" identifier = identifier) ;) (expression_statement "uVar11 = (**(code **)(puVar6 + 0x78a20))();" (assignment_expression "uVar11 = (**(code **)(puVar6 + 0x78a20))()" identifier = (call_expression "(**(code **)(puVar6 + 0x78a20))()" (parenthesized_expression "(**(code **)(puVar6 + 0x78a20))" ( (pointer_expression "**(code **)(puVar6 + 0x78a20)" * (pointer_expression "*(code **)(puVar6 + 0x78a20)" * (cast_expression "(code **)(puVar6 + 0x78a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x78a20)" ( (binary_expression "puVar6 + 0x78a20" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (labeled_statement "LAB_000b2a78:\n            pbVar19 = pbVar18;" statement_identifier : (expression_statement "pbVar19 = pbVar18;" (assignment_expression "pbVar19 = pbVar18" identifier = identifier) ;)) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;) (if_statement "if (uVar11 != 0) goto LAB_000b2b3c;" if (parenthesized_expression "(uVar11 != 0)" ( (binary_expression "uVar11 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b2b3c;" goto statement_identifier ;)) (expression_statement "pbVar19 = (byte *)0x0;" (assignment_expression "pbVar19 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar26 = uVar4 | 2;" (assignment_expression "uVar26 = uVar4 | 2" identifier = (binary_expression "uVar4 | 2" identifier | number_literal)) ;) (labeled_statement "LAB_000b2a90:\n            pbStack_1ec = pbVar18;" statement_identifier : (expression_statement "pbStack_1ec = pbVar18;" (assignment_expression "pbStack_1ec = pbVar18" identifier = identifier) ;)) (expression_statement "iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40);" (assignment_expression "iVar5 = (**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40)" identifier = (call_expression "(**(code **)(puVar6 + 0x785d0))(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40)" (parenthesized_expression "(**(code **)(puVar6 + 0x785d0))" ( (pointer_expression "**(code **)(puVar6 + 0x785d0)" * (pointer_expression "*(code **)(puVar6 + 0x785d0)" * (cast_expression "(code **)(puVar6 + 0x785d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x785d0)" ( (binary_expression "puVar6 + 0x785d0" identifier + number_literal) ))))) )) (argument_list "(pbVar18,*(int *)(puVar6 + 0x77b00) + -0x4e40)" ( identifier , (binary_expression "*(int *)(puVar6 + 0x77b00) + -0x4e40" (pointer_expression "*(int *)(puVar6 + 0x77b00)" * (cast_expression "(int *)(puVar6 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77b00)" ( (binary_expression "puVar6 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pbVar15 = pbVar18 + iVar5;" (assignment_expression "pbVar15 = pbVar18 + iVar5" identifier = (binary_expression "pbVar18 + iVar5" identifier + identifier)) ;) (expression_statement "uVar30 = CONCAT44(iVar5,(uint)*pbVar15);" (assignment_expression "uVar30 = CONCAT44(iVar5,(uint)*pbVar15)" identifier = (call_expression "CONCAT44(iVar5,(uint)*pbVar15)" identifier (argument_list "(iVar5,(uint)*pbVar15)" ( identifier , (binary_expression "(uint)*pbVar15" (parenthesized_expression "(uint)" ( identifier )) * identifier) )))) ;) (expression_statement "puVar22 = puVar16;" (assignment_expression "puVar22 = puVar16" identifier = identifier) ;) (if_statement "if (*pbVar15 != 0) goto LAB_000b2b48;" if (parenthesized_expression "(*pbVar15 != 0)" ( (binary_expression "*pbVar15 != 0" (pointer_expression "*pbVar15" * identifier) != number_literal) )) (goto_statement "goto LAB_000b2b48;" goto statement_identifier ;)) (expression_statement "uVar11 = iVar5 - 8;" (assignment_expression "uVar11 = iVar5 - 8" identifier = (binary_expression "iVar5 - 8" identifier - number_literal)) ;) (expression_statement "uVar4 = uVar11 & 1;" (assignment_expression "uVar4 = uVar11 & 1" identifier = (binary_expression "uVar11 & 1" identifier & number_literal)) ;) (if_statement "if (uVar11 < 5) goto LAB_000b2ad4;" if (parenthesized_expression "(uVar11 < 5)" ( (binary_expression "uVar11 < 5" identifier < number_literal) )) (goto_statement "goto LAB_000b2ad4;" goto statement_identifier ;)) (labeled_statement "LAB_000b2ac4:\n            pbVar15 = *(byte **)(puVar6 + 0x77c24);" statement_identifier : (expression_statement "pbVar15 = *(byte **)(puVar6 + 0x77c24);" (assignment_expression "pbVar15 = *(byte **)(puVar6 + 0x77c24)" identifier = (pointer_expression "*(byte **)(puVar6 + 0x77c24)" * (cast_expression "(byte **)(puVar6 + 0x77c24)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x77c24)" ( (binary_expression "puVar6 + 0x77c24" identifier + number_literal) ))))) ;)) (do_statement "do {\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            } while( true );" do (compound_statement "{\n              uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);\nLAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }\n            }" { (expression_statement "uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18);" (assignment_expression "uVar4 = (**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18)" identifier = (call_expression "(**(code **)(puVar6 + 0x77b3c))(pbVar15,pbVar18)" (parenthesized_expression "(**(code **)(puVar6 + 0x77b3c))" ( (pointer_expression "**(code **)(puVar6 + 0x77b3c)" * (pointer_expression "*(code **)(puVar6 + 0x77b3c)" * (cast_expression "(code **)(puVar6 + 0x77b3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x77b3c)" ( (binary_expression "puVar6 + 0x77b3c" identifier + number_literal) ))))) )) (argument_list "(pbVar15,pbVar18)" ( identifier , identifier )))) ;) (labeled_statement "LAB_000b2ad4:\n              while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }" statement_identifier : (while_statement "while (pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0) {\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }" while (parenthesized_expression "(pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0)" ( (comma_expression "pbVar15 = *(byte **)(puVar6 + 0x77c24), uVar4 == 0" (assignment_expression "pbVar15 = *(byte **)(puVar6 + 0x77c24)" identifier = (pointer_expression "*(byte **)(puVar6 + 0x77c24)" * (cast_expression "(byte **)(puVar6 + 0x77c24)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x77c24)" ( (binary_expression "puVar6 + 0x77c24" identifier + number_literal) ))))) , (binary_expression "uVar4 == 0" identifier == number_literal)) )) (compound_statement "{\n                puVar16 = puVar22;\n                if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }\n                do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));\n                uVar4 = uVar11 & 1;\n                if (4 < uVar11) goto LAB_000b2ac4;\n              }" { (expression_statement "puVar16 = puVar22;" (assignment_expression "puVar16 = puVar22" identifier = identifier) ;) (if_statement "if (uVar11 != 0) {\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }" if (parenthesized_expression "(uVar11 != 0)" ( (binary_expression "uVar11 != 0" identifier != number_literal) )) (compound_statement "{\n                  (**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);\n                  (**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);\n                  pbVar15 = pbStack_1ec;\n                  (**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);\n                }" { (expression_statement "(**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4);" (call_expression "(**(code **)(puVar6 + 0x788e8))(&uStack_104,pbVar18 + 8,uVar11,4)" (parenthesized_expression "(**(code **)(puVar6 + 0x788e8))" ( (pointer_expression "**(code **)(puVar6 + 0x788e8)" * (pointer_expression "*(code **)(puVar6 + 0x788e8)" * (cast_expression "(code **)(puVar6 + 0x788e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x788e8)" ( (binary_expression "puVar6 + 0x788e8" identifier + number_literal) ))))) )) (argument_list "(&uStack_104,pbVar18 + 8,uVar11,4)" ( (pointer_expression "&uStack_104" & identifier) , (binary_expression "pbVar18 + 8" identifier + number_literal) , identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8);" (call_expression "(**(code **)(puVar6 + 0x78acc))(pbVar18 + uVar11,pbVar18,8)" (parenthesized_expression "(**(code **)(puVar6 + 0x78acc))" ( (pointer_expression "**(code **)(puVar6 + 0x78acc)" * (pointer_expression "*(code **)(puVar6 + 0x78acc)" * (cast_expression "(code **)(puVar6 + 0x78acc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x78acc)" ( (binary_expression "puVar6 + 0x78acc" identifier + number_literal) ))))) )) (argument_list "(pbVar18 + uVar11,pbVar18,8)" ( (binary_expression "pbVar18 + uVar11" identifier + identifier) , identifier , number_literal ))) ;) (expression_statement "pbVar15 = pbStack_1ec;" (assignment_expression "pbVar15 = pbStack_1ec" identifier = identifier) ;) (expression_statement "(**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11);" (call_expression "(**(code **)(puVar6 + 0x78aa8))(pbStack_1ec,&uStack_104,uVar11)" (parenthesized_expression "(**(code **)(puVar6 + 0x78aa8))" ( (pointer_expression "**(code **)(puVar6 + 0x78aa8)" * (pointer_expression "*(code **)(puVar6 + 0x78aa8)" * (cast_expression "(code **)(puVar6 + 0x78aa8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x78aa8)" ( (binary_expression "puVar6 + 0x78aa8" identifier + number_literal) ))))) )) (argument_list "(pbStack_1ec,&uStack_104,uVar11)" ( identifier , (pointer_expression "&uStack_104" & identifier) , identifier ))) ;) })) (do_statement "do {\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                } while (((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0));" do (compound_statement "{\n                  pbVar18 = (byte *)puVar16[1];\nLAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;\n                  puVar22 = puVar16;\n                  if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();\nLAB_000b2b48:\n                  puVar16 = puVar22;\n                }" { (expression_statement "pbVar18 = (byte *)puVar16[1];" (assignment_expression "pbVar18 = (byte *)puVar16[1]" identifier = (cast_expression "(byte *)puVar16[1]" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar16[1]" identifier [ number_literal ]))) ;) (labeled_statement "LAB_000b2b34:\n                  uVar12 = uVar26 & 0x10;" statement_identifier : (expression_statement "uVar12 = uVar26 & 0x10;" (assignment_expression "uVar12 = uVar26 & 0x10" identifier = (binary_expression "uVar26 & 0x10" identifier & number_literal)) ;)) (expression_statement "puVar22 = puVar16;" (assignment_expression "puVar22 = puVar16" identifier = identifier) ;) (if_statement "if (pbVar18 == (byte *)0x0) goto LAB_000b27b0;" if (parenthesized_expression "(pbVar18 == (byte *)0x0)" ( (binary_expression "pbVar18 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b27b0;" goto statement_identifier ;)) (labeled_statement "LAB_000b2b3c:\n                  uVar30 = (**(code **)(puVar6 + 0x77b34))();" statement_identifier : (expression_statement "uVar30 = (**(code **)(puVar6 + 0x77b34))();" (assignment_expression "uVar30 = (**(code **)(puVar6 + 0x77b34))()" identifier = (call_expression "(**(code **)(puVar6 + 0x77b34))()" (parenthesized_expression "(**(code **)(puVar6 + 0x77b34))" ( (pointer_expression "**(code **)(puVar6 + 0x77b34)" * (pointer_expression "*(code **)(puVar6 + 0x77b34)" * (cast_expression "(code **)(puVar6 + 0x77b34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x77b34)" ( (binary_expression "puVar6 + 0x77b34" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;)) (labeled_statement "LAB_000b2b48:\n                  puVar16 = puVar22;" statement_identifier : (expression_statement "puVar16 = puVar22;" (assignment_expression "puVar16 = puVar22" identifier = identifier) ;)) }) while (parenthesized_expression "(((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0))" ( (binary_expression "((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)) ||\n                        (uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0)" (parenthesized_expression "((((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30))" ( (binary_expression "(((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)) ||\n                         (9 < pbVar15[2] - 0x30)" (parenthesized_expression "(((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30))" ( (binary_expression "((int)uVar30 != 0x2e) || (9 < pbVar15[1] - 0x30)" (parenthesized_expression "((int)uVar30 != 0x2e)" ( (binary_expression "(int)uVar30 != 0x2e" (cast_expression "(int)uVar30" ( (type_descriptor "int" primitive_type) ) identifier) != number_literal) )) || (parenthesized_expression "(9 < pbVar15[1] - 0x30)" ( (binary_expression "9 < pbVar15[1] - 0x30" number_literal < (binary_expression "pbVar15[1] - 0x30" (subscript_expression "pbVar15[1]" identifier [ number_literal ]) - number_literal)) ))) )) || (parenthesized_expression "(9 < pbVar15[2] - 0x30)" ( (binary_expression "9 < pbVar15[2] - 0x30" number_literal < (binary_expression "pbVar15[2] - 0x30" (subscript_expression "pbVar15[2]" identifier [ number_literal ]) - number_literal)) ))) )) || (parenthesized_expression "(uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0)" ( (comma_expression "uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8, pbVar15[3] != 0" (assignment_expression "uVar11 = (int)((ulonglong)uVar30 >> 0x20) - 8" identifier = (binary_expression "(int)((ulonglong)uVar30 >> 0x20) - 8" (cast_expression "(int)((ulonglong)uVar30 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar30 >> 0x20)" ( (binary_expression "(ulonglong)uVar30 >> 0x20" (cast_expression "(ulonglong)uVar30" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) - number_literal)) , (binary_expression "pbVar15[3] != 0" (subscript_expression "pbVar15[3]" identifier [ number_literal ]) != number_literal)) ))) )) ;) (expression_statement "uVar4 = uVar11 & 1;" (assignment_expression "uVar4 = uVar11 & 1" identifier = (binary_expression "uVar11 & 1" identifier & number_literal)) ;) (if_statement "if (4 < uVar11) goto LAB_000b2ac4;" if (parenthesized_expression "(4 < uVar11)" ( (binary_expression "4 < uVar11" number_literal < identifier) )) (goto_statement "goto LAB_000b2ac4;" goto statement_identifier ;)) }))) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "uStack_1d4 = 0;" (assignment_expression "uStack_1d4 = 0" identifier = number_literal) ;) (expression_statement "uStack_1d0 = 0;" (assignment_expression "uStack_1d0 = 0" identifier = number_literal) ;) (expression_statement "uStack_1cc = 0;" (assignment_expression "uStack_1cc = 0" identifier = number_literal) ;) (if_statement "if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }" if (parenthesized_expression "((uVar4 & 0x40) == 0)" ( (binary_expression "(uVar4 & 0x40) == 0" (parenthesized_expression "(uVar4 & 0x40)" ( (binary_expression "uVar4 & 0x40" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            (**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);\nLAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }\n            puVar16 = &uStack_1d4;\n            auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();\n            if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }" { (expression_statement "(**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4);" (call_expression "(**(code **)(puVar6 + 0x7847c))(pbStack_1ec,&uStack_1d4)" (parenthesized_expression "(**(code **)(puVar6 + 0x7847c))" ( (pointer_expression "**(code **)(puVar6 + 0x7847c)" * (pointer_expression "*(code **)(puVar6 + 0x7847c)" * (cast_expression "(code **)(puVar6 + 0x7847c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x7847c)" ( (binary_expression "puVar6 + 0x7847c" identifier + number_literal) ))))) )) (argument_list "(pbStack_1ec,&uStack_1d4)" ( identifier , (pointer_expression "&uStack_1d4" & identifier) ))) ;) (labeled_statement "LAB_000b2874:\n            if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }" statement_identifier : (if_statement "if (*pbStack_1ec != 0x40) {\n              uStack_1b4 = 0xffffffff;\n            }" if (parenthesized_expression "(*pbStack_1ec != 0x40)" ( (binary_expression "*pbStack_1ec != 0x40" (pointer_expression "*pbStack_1ec" * identifier) != number_literal) )) (compound_statement "{\n              uStack_1b4 = 0xffffffff;\n            }" { (expression_statement "uStack_1b4 = 0xffffffff;" (assignment_expression "uStack_1b4 = 0xffffffff" identifier = number_literal) ;) }))) (expression_statement "puVar16 = &uStack_1d4;" (assignment_expression "puVar16 = &uStack_1d4" identifier = (pointer_expression "&uStack_1d4" & identifier)) ;) (expression_statement "auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))();" (assignment_expression "auStack_1dc[0] = (**(code **)(puVar6 + 0x78480))()" (subscript_expression "auStack_1dc[0]" identifier [ number_literal ]) = (call_expression "(**(code **)(puVar6 + 0x78480))()" (parenthesized_expression "(**(code **)(puVar6 + 0x78480))" ( (pointer_expression "**(code **)(puVar6 + 0x78480)" * (pointer_expression "*(code **)(puVar6 + 0x78480)" * (cast_expression "(code **)(puVar6 + 0x78480)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x78480)" ( (binary_expression "puVar6 + 0x78480" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))\n            {\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }" if (parenthesized_expression "(((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0))" ( (binary_expression "((uVar4 & 2) != 0) && (iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0)" (parenthesized_expression "((uVar4 & 2) != 0)" ( (binary_expression "(uVar4 & 2) != 0" (parenthesized_expression "(uVar4 & 2)" ( (binary_expression "uVar4 & 2" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "(iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0)" ( (comma_expression "iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22), iVar5 < 0" (assignment_expression "iVar5 = (**(code **)(puVar6 + 0x78708))(puVar22)" identifier = (call_expression "(**(code **)(puVar6 + 0x78708))(puVar22)" (parenthesized_expression "(**(code **)(puVar6 + 0x78708))" ( (pointer_expression "**(code **)(puVar6 + 0x78708)" * (pointer_expression "*(code **)(puVar6 + 0x78708)" * (cast_expression "(code **)(puVar6 + 0x78708)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x78708)" ( (binary_expression "puVar6 + 0x78708" identifier + number_literal) ))))) )) (argument_list "(puVar22)" ( identifier )))) , (binary_expression "iVar5 < 0" identifier < number_literal)) ))) )) (compound_statement "{\n              (**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);\n            }" { (expression_statement "(**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34);" (call_expression "(**(code **)(puVar6 + 0x77b90))(*(int *)(puVar6 + 0x77b00) + -0x4e34)" (parenthesized_expression "(**(code **)(puVar6 + 0x77b90))" ( (pointer_expression "**(code **)(puVar6 + 0x77b90)" * (pointer_expression "*(code **)(puVar6 + 0x77b90)" * (cast_expression "(code **)(puVar6 + 0x77b90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x77b90)" ( (binary_expression "puVar6 + 0x77b90" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar6 + 0x77b00) + -0x4e34)" ( (binary_expression "*(int *)(puVar6 + 0x77b00) + -0x4e34" (pointer_expression "*(int *)(puVar6 + 0x77b00)" * (cast_expression "(int *)(puVar6 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77b00)" ( (binary_expression "puVar6 + 0x77b00" identifier + number_literal) )))) + number_literal) ))) ;) })) (goto_statement "goto LAB_000b28d0;" goto statement_identifier ;) })) (expression_statement "iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4);" (assignment_expression "iVar5 = (**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4)" identifier = (call_expression "(**(code **)(puVar6 + 0x789f8))(pbStack_1ec,uStack_1e8,&uStack_1d4)" (parenthesized_expression "(**(code **)(puVar6 + 0x789f8))" ( (pointer_expression "**(code **)(puVar6 + 0x789f8)" * (pointer_expression "*(code **)(puVar6 + 0x789f8)" * (cast_expression "(code **)(puVar6 + 0x789f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x789f8)" ( (binary_expression "puVar6 + 0x789f8" identifier + number_literal) ))))) )) (argument_list "(pbStack_1ec,uStack_1e8,&uStack_1d4)" ( identifier , identifier , (pointer_expression "&uStack_1d4" & identifier) )))) ;) (if_statement "if (iVar5 != 0) goto LAB_000b2874;" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b2874;" goto statement_identifier ;)) (expression_statement "uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec);" (assignment_expression "uVar11 = (**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec)" identifier = (call_expression "(**(code **)(puVar6 + 0x77b3c))(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec)" (parenthesized_expression "(**(code **)(puVar6 + 0x77b3c))" ( (pointer_expression "**(code **)(puVar6 + 0x77b3c)" * (pointer_expression "*(code **)(puVar6 + 0x77b3c)" * (cast_expression "(code **)(puVar6 + 0x77b3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x77b3c)" ( (binary_expression "puVar6 + 0x77b3c" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar6 + 0x77c24),pbStack_1ec)" ( (pointer_expression "*(undefined4 *)(puVar6 + 0x77c24)" * (cast_expression "(undefined4 *)(puVar6 + 0x77c24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 0x77c24)" ( (binary_expression "puVar6 + 0x77c24" identifier + number_literal) )))) , identifier )))) ;) (expression_statement "pbVar19 = pbVar18;" (assignment_expression "pbVar19 = pbVar18" identifier = identifier) ;) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;) (labeled_statement "LAB_000b2834:\n          uVar12 = uVar26 & 0x10;" statement_identifier : (expression_statement "uVar12 = uVar26 & 0x10;" (assignment_expression "uVar12 = uVar26 & 0x10" identifier = (binary_expression "uVar26 & 0x10" identifier & number_literal)) ;)) (if_statement "if (uVar11 != 0) goto LAB_000b27b0;" if (parenthesized_expression "(uVar11 != 0)" ( (binary_expression "uVar11 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b27b0;" goto statement_identifier ;)) (expression_statement "uVar4 = uVar26 | 2;" (assignment_expression "uVar4 = uVar26 | 2" identifier = (binary_expression "uVar26 | 2" identifier | number_literal)) ;) (expression_statement "pbStack_1ec = (byte *)0x0;" (assignment_expression "pbStack_1ec = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;" if (parenthesized_expression "((uVar26 & 0x10) != 0)" ( (binary_expression "(uVar26 & 0x10) != 0" (parenthesized_expression "(uVar26 & 0x10)" ( (binary_expression "uVar26 & 0x10" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000b27b8;" goto statement_identifier ;)) (expression_statement "pcVar29 = *(code **)(puVar6 + 0x78a84);" (assignment_expression "pcVar29 = *(code **)(puVar6 + 0x78a84)" identifier = (pointer_expression "*(code **)(puVar6 + 0x78a84)" * (cast_expression "(code **)(puVar6 + 0x78a84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + 0x78a84)" ( (binary_expression "puVar6 + 0x78a84" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000b2850:\n          (*pcVar29)(auStack_1dc);" statement_identifier : (expression_statement "(*pcVar29)(auStack_1dc);" (call_expression "(*pcVar29)(auStack_1dc)" (parenthesized_expression "(*pcVar29)" ( (pointer_expression "*pcVar29" * identifier) )) (argument_list "(auStack_1dc)" ( identifier ))) ;)) (expression_statement "pbVar18 = pbVar19;" (assignment_expression "pbVar18 = pbVar19" identifier = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })) })) }) (else_clause "else {\n    puVar22 = (undefined4 *)0x9;\n  }" else (compound_statement "{\n    puVar22 = (undefined4 *)0x9;\n  }" { (expression_statement "puVar22 = (undefined4 *)0x9;" (assignment_expression "puVar22 = (undefined4 *)0x9" identifier = (cast_expression "(undefined4 *)0x9" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (labeled_statement "LAB_000b204c:\n  uVar4 = 0;" statement_identifier : (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;)) (expression_statement "piVar21 = (int *)0x0;" (assignment_expression "piVar21 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar5 = *(int *)PTR_optind_0012b0ec;" (assignment_expression "iVar5 = *(int *)PTR_optind_0012b0ec" identifier = (pointer_expression "*(int *)PTR_optind_0012b0ec" * (cast_expression "(int *)PTR_optind_0012b0ec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "puVar6 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x6a44;" (binary_expression "puVar6 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x6a44" (assignment_expression "puVar6 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" identifier = (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier)) (ERROR ")9__f_l_0012a1a8" ) number_literal identifier) + number_literal) ;) (expression_statement "puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;" (binary_expression "puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308" (assignment_expression "puVar7 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" identifier = (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier)) (ERROR ")9__f_l_0012a1a8" ) number_literal identifier) + number_literal) ;) (do_statement "do {\n    do {\n      ltok = (char *)(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6);\n      if (ltok == (char *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);\n        }\n        ppcVar20 = argv + iVar5;\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*ppcVar20 == (char *)0x0) {\n          ppcVar20 = ppcVar20 + -1;\n          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n        }\n        puVar7 = PTR_fopen_or_warn_stdin_0012a3f0;\n        puVar6 = PTR_xmalloc_fgetline_0012a2fc;\n        uStack_5c = 0;\n        do {\n          iVar5 = (*(code *)puVar7)();\n          if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }\n          ppcVar20 = ppcVar20 + 1;\n          if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }\n        } while( true );\n      }\n    } while (*ltok == '\0');\n    pcVar8 = (char *)(*(code *)PTR_strsep_0012afa0)(&ltok,puVar7);\n    if ((*pcVar8 == '\0') || (iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8), iVar25 == 0))\n    {\n      iVar25 = 0;\n      if (ltok != (char *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      iVar23 = -1;\n    }\n    else {\n      iVar25 = iVar25 + -1;\n      if (ltok == (char *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      iVar23 = 0x7fffffff;\n      if (*ltok != '\0') {\n        iVar23 = 0x7ffffffe;\n        iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();\n        if (iVar10 != 0) {\n          iVar23 = iVar10 + -1;\n        }\n        if (iVar25 == iVar23) {\n          iVar23 = -1;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_xrealloc_vector_helper_0012a3b8)(piVar21,0x804,uVar4);\n    iVar10 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar10] = iVar25;\n    (piVar21 + iVar10)[1] = iVar23;\n  } while( true );" do (compound_statement "{\n    do {\n      ltok = (char *)(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6);\n      if (ltok == (char *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);\n        }\n        ppcVar20 = argv + iVar5;\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*ppcVar20 == (char *)0x0) {\n          ppcVar20 = ppcVar20 + -1;\n          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n        }\n        puVar7 = PTR_fopen_or_warn_stdin_0012a3f0;\n        puVar6 = PTR_xmalloc_fgetline_0012a2fc;\n        uStack_5c = 0;\n        do {\n          iVar5 = (*(code *)puVar7)();\n          if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }\n          ppcVar20 = ppcVar20 + 1;\n          if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }\n        } while( true );\n      }\n    } while (*ltok == '\0');\n    pcVar8 = (char *)(*(code *)PTR_strsep_0012afa0)(&ltok,puVar7);\n    if ((*pcVar8 == '\0') || (iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8), iVar25 == 0))\n    {\n      iVar25 = 0;\n      if (ltok != (char *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      iVar23 = -1;\n    }\n    else {\n      iVar25 = iVar25 + -1;\n      if (ltok == (char *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      iVar23 = 0x7fffffff;\n      if (*ltok != '\0') {\n        iVar23 = 0x7ffffffe;\n        iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();\n        if (iVar10 != 0) {\n          iVar23 = iVar10 + -1;\n        }\n        if (iVar25 == iVar23) {\n          iVar23 = -1;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_xrealloc_vector_helper_0012a3b8)(piVar21,0x804,uVar4);\n    iVar10 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar10] = iVar25;\n    (piVar21 + iVar10)[1] = iVar23;\n  }" { (do_statement "do {\n      ltok = (char *)(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6);\n      if (ltok == (char *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);\n        }\n        ppcVar20 = argv + iVar5;\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*ppcVar20 == (char *)0x0) {\n          ppcVar20 = ppcVar20 + -1;\n          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n        }\n        puVar7 = PTR_fopen_or_warn_stdin_0012a3f0;\n        puVar6 = PTR_xmalloc_fgetline_0012a2fc;\n        uStack_5c = 0;\n        do {\n          iVar5 = (*(code *)puVar7)();\n          if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }\n          ppcVar20 = ppcVar20 + 1;\n          if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }\n        } while( true );\n      }\n    } while (*ltok == '\0');" do (compound_statement "{\n      ltok = (char *)(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6);\n      if (ltok == (char *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);\n        }\n        ppcVar20 = argv + iVar5;\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*ppcVar20 == (char *)0x0) {\n          ppcVar20 = ppcVar20 + -1;\n          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n        }\n        puVar7 = PTR_fopen_or_warn_stdin_0012a3f0;\n        puVar6 = PTR_xmalloc_fgetline_0012a2fc;\n        uStack_5c = 0;\n        do {\n          iVar5 = (*(code *)puVar7)();\n          if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }\n          ppcVar20 = ppcVar20 + 1;\n          if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }\n        } while( true );\n      }\n    }" { (expression_statement "ltok = (char *)(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6);" (assignment_expression "ltok = (char *)(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6)" identifier = (cast_expression "(char *)(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_strsep_0012afa0)(&sopt,puVar6)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" ( (pointer_expression "*(code *)PTR_strsep_0012afa0" * (cast_expression "(code *)PTR_strsep_0012afa0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&sopt,puVar6)" ( (pointer_expression "&sopt" & identifier) , identifier ))))) ;) (if_statement "if (ltok == (char *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);\n        }\n        ppcVar20 = argv + iVar5;\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*ppcVar20 == (char *)0x0) {\n          ppcVar20 = ppcVar20 + -1;\n          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n        }\n        puVar7 = PTR_fopen_or_warn_stdin_0012a3f0;\n        puVar6 = PTR_xmalloc_fgetline_0012a2fc;\n        uStack_5c = 0;\n        do {\n          iVar5 = (*(code *)puVar7)();\n          if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }\n          ppcVar20 = ppcVar20 + 1;\n          if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }\n        } while( true );\n      }" if (parenthesized_expression "(ltok == (char *)0x0)" ( (binary_expression "ltok == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        if (uVar4 == 0) {\n          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);\n        }\n        ppcVar20 = argv + iVar5;\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*ppcVar20 == (char *)0x0) {\n          ppcVar20 = ppcVar20 + -1;\n          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n        }\n        puVar7 = PTR_fopen_or_warn_stdin_0012a3f0;\n        puVar6 = PTR_xmalloc_fgetline_0012a2fc;\n        uStack_5c = 0;\n        do {\n          iVar5 = (*(code *)puVar7)();\n          if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }\n          ppcVar20 = ppcVar20 + 1;\n          if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }\n        } while( true );\n      }" { (if_statement "if (uVar4 == 0) {\n          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);\n        }" if (parenthesized_expression "(uVar4 == 0)" ( (binary_expression "uVar4 == 0" identifier == number_literal) )) (compound_statement "{\n          (*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);\n        }" { (expression_statement "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90);" (binary_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x4e90" (call_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)\n                    (PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" (parenthesized_expression "(*(code *)PTR_bb_error_msg_and_die_0012a1e4)" ( (pointer_expression "*(code *)PTR_bb_error_msg_and_die_0012a1e4" * (cast_expression "(code *)PTR_bb_error_msg_and_die_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)" ( (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier) ))) (ERROR "9__f_l_0012a1a8" number_literal identifier) + number_literal) (ERROR ")" )) ;) })) (expression_statement "ppcVar20 = argv + iVar5;" (assignment_expression "ppcVar20 = argv + iVar5" identifier = (binary_expression "argv + iVar5" identifier + identifier)) ;) (expression_statement "(*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);" (call_expression "(*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64)" (parenthesized_expression "(*(code *)PTR_qsort_0012ad24)" ( (pointer_expression "*(code *)PTR_qsort_0012ad24" * (cast_expression "(code *)PTR_qsort_0012ad24" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64)" ( identifier , identifier , number_literal , (binary_expression "PTR_LAB_0012aad4 + 0x1f64" identifier + number_literal) ))) ;) (if_statement "if (*ppcVar20 == (char *)0x0) {\n          ppcVar20 = ppcVar20 + -1;\n          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n        }" if (parenthesized_expression "(*ppcVar20 == (char *)0x0)" ( (binary_expression "*ppcVar20 == (char *)0x0" (pointer_expression "*ppcVar20" * identifier) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          ppcVar20 = ppcVar20 + -1;\n          *ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;\n        }" { (expression_statement "ppcVar20 = ppcVar20 + -1;" (assignment_expression "ppcVar20 = ppcVar20 + -1" identifier = (binary_expression "ppcVar20 + -1" identifier + number_literal)) ;) (expression_statement "*ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308;" (binary_expression "*ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P)9__f_l_0012a1a8 + -0x1308" (assignment_expression "*ppcVar20 = PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (pointer_expression "*ppcVar20" * identifier) = (binary_expression "PTR_s_<_W_q_v1_HxLJ_&uD_sa_____P" (binary_expression "PTR_s_<_W_q_v1_HxLJ_" identifier < identifier) & identifier)) (ERROR ")9__f_l_0012a1a8" ) number_literal identifier) + number_literal) ;) })) (expression_statement "puVar7 = PTR_fopen_or_warn_stdin_0012a3f0;" (assignment_expression "puVar7 = PTR_fopen_or_warn_stdin_0012a3f0" identifier = identifier) ;) (expression_statement "puVar6 = PTR_xmalloc_fgetline_0012a2fc;" (assignment_expression "puVar6 = PTR_xmalloc_fgetline_0012a2fc" identifier = identifier) ;) (expression_statement "uStack_5c = 0;" (assignment_expression "uStack_5c = 0" identifier = number_literal) ;) (do_statement "do {\n          iVar5 = (*(code *)puVar7)();\n          if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }\n          ppcVar20 = ppcVar20 + 1;\n          if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }\n        } while( true );" do (compound_statement "{\n          iVar5 = (*(code *)puVar7)();\n          if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }\n          ppcVar20 = ppcVar20 + 1;\n          if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }\n        }" { (expression_statement "iVar5 = (*(code *)puVar7)();" (assignment_expression "iVar5 = (*(code *)puVar7)()" identifier = (call_expression "(*(code *)puVar7)()" (parenthesized_expression "(*(code *)puVar7)" ( (pointer_expression "*(code *)puVar7" * (cast_expression "(code *)puVar7" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar5 == 0) {\n            uStack_5c = 1;\n          }\n          else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }" if (parenthesized_expression "(iVar5 == 0)" ( (binary_expression "iVar5 == 0" identifier == number_literal) )) (compound_statement "{\n            uStack_5c = 1;\n          }" { (expression_statement "uStack_5c = 1;" (assignment_expression "uStack_5c = 1" identifier = number_literal) ;) }) (else_clause "else {\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }" else (compound_statement "{\n            iStack_74 = 0;\n            while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }\n            (*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);\n          }" { (expression_statement "iStack_74 = 0;" (assignment_expression "iStack_74 = 0" identifier = number_literal) ;) (while_statement "while (line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0) {\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }" while (parenthesized_expression "(line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0)" ( (comma_expression "line = (char *)(*(code *)puVar6)(iVar5), line != (char *)0x0" (assignment_expression "line = (char *)(*(code *)puVar6)(iVar5)" identifier = (cast_expression "(char *)(*(code *)puVar6)(iVar5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)puVar6)(iVar5)" (parenthesized_expression "(*(code *)puVar6)" ( (pointer_expression "*(code *)puVar6" * (cast_expression "(code *)puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar5)" ( identifier ))))) , (binary_expression "line != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n              iVar25 = (*(code *)PTR_strlen_0012af3c)(line);\n              iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);\n              pcVar8 = line;\n              puVar3 = PTR_stdout_0012ae40;\n              uVar26 = *(uint *)PTR_option_mask32_0012a334;\n              if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }\nLAB_000b22d0:\n              iStack_74 = iStack_74 + 1;\n              (*(code *)PTR_free_0012b168)(iVar23);\n              (*(code *)PTR_free_0012b168)(pcVar8);\n            }" { (expression_statement "iVar25 = (*(code *)PTR_strlen_0012af3c)(line);" (assignment_expression "iVar25 = (*(code *)PTR_strlen_0012af3c)(line)" identifier = (call_expression "(*(code *)PTR_strlen_0012af3c)(line)" (parenthesized_expression "(*(code *)PTR_strlen_0012af3c)" ( (pointer_expression "*(code *)PTR_strlen_0012af3c" * (cast_expression "(code *)PTR_strlen_0012af3c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(line)" ( identifier )))) ;) (expression_statement "iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1);" (assignment_expression "iVar23 = (*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1)" identifier = (call_expression "(*(code *)PTR_xzalloc_0012a1d0)(iVar25 + 1)" (parenthesized_expression "(*(code *)PTR_xzalloc_0012a1d0)" ( (pointer_expression "*(code *)PTR_xzalloc_0012a1d0" * (cast_expression "(code *)PTR_xzalloc_0012a1d0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar25 + 1)" ( (binary_expression "iVar25 + 1" identifier + number_literal) )))) ;) (expression_statement "pcVar8 = line;" (assignment_expression "pcVar8 = line" identifier = identifier) ;) (expression_statement "puVar3 = PTR_stdout_0012ae40;" (assignment_expression "puVar3 = PTR_stdout_0012ae40" identifier = identifier) ;) (expression_statement "uVar26 = *(uint *)PTR_option_mask32_0012a334;" (assignment_expression "uVar26 = *(uint *)PTR_option_mask32_0012a334" identifier = (pointer_expression "*(uint *)PTR_option_mask32_0012a334" * (cast_expression "(uint *)PTR_option_mask32_0012a334" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if ((uVar26 & 3) == 0) {\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }\n              else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }" if (parenthesized_expression "((uVar26 & 3) == 0)" ( (binary_expression "(uVar26 & 3) == 0" (parenthesized_expression "(uVar26 & 3)" ( (binary_expression "uVar26 & 3" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }\n              }" { (if_statement "if (puVar22 == (undefined4 *)&DAT_0000000a) {\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }\n                else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }" if (parenthesized_expression "(puVar22 == (undefined4 *)&DAT_0000000a)" ( (binary_expression "puVar22 == (undefined4 *)&DAT_0000000a" identifier == (cast_expression "(undefined4 *)&DAT_0000000a" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0000000a" & identifier))) )) (compound_statement "{\n                  iVar25 = *piVar21;\n                  if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }\n                }" { (expression_statement "iVar25 = *piVar21;" (assignment_expression "iVar25 = *piVar21" identifier = (pointer_expression "*piVar21" * identifier)) ;) (if_statement "if (iVar25 <= iStack_74) {\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }" if (parenthesized_expression "(iVar25 <= iStack_74)" ( (binary_expression "iVar25 <= iStack_74" identifier <= identifier) )) (compound_statement "{\n                    if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }\n                    (*(code *)PTR_puts_0012afb4)(line);\n                  }" { (if_statement "if (iVar25 < iStack_74) {\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }" if (parenthesized_expression "(iVar25 < iStack_74)" ( (binary_expression "iVar25 < iStack_74" identifier < identifier) )) (compound_statement "{\n                      iVar10 = 0;\n                      do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);\n                    }" { (expression_statement "iVar10 = 0;" (assignment_expression "iVar10 = 0" identifier = number_literal) ;) (do_statement "do {\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      } while (iVar25 < iStack_74);" do (compound_statement "{\n                        iVar25 = iVar25 + 1;\n                        if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }\n                      }" { (expression_statement "iVar25 = iVar25 + 1;" (assignment_expression "iVar25 = iVar25 + 1" identifier = (binary_expression "iVar25 + 1" identifier + number_literal)) ;) (if_statement "if (piVar21[iVar10 * 2 + 1] < iVar25) {\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }\n                        else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }" if (parenthesized_expression "(piVar21[iVar10 * 2 + 1] < iVar25)" ( (binary_expression "piVar21[iVar10 * 2 + 1] < iVar25" (subscript_expression "piVar21[iVar10 * 2 + 1]" identifier [ (binary_expression "iVar10 * 2 + 1" (binary_expression "iVar10 * 2" identifier * number_literal) + number_literal) ]) < identifier) )) (compound_statement "{\n                          if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;\n                          iVar25 = piVar21[iVar10 * 2 + 2];\nLAB_000b2350:\n                          iVar10 = iVar10 + 1;\n                          if (iStack_74 < iVar25) goto LAB_000b22d0;\n                        }" { (if_statement "if (uVar4 <= iVar10 + 1U) goto LAB_000b22d0;" if (parenthesized_expression "(uVar4 <= iVar10 + 1U)" ( (binary_expression "uVar4 <= iVar10 + 1U" identifier <= (binary_expression "iVar10 + 1U" identifier + number_literal)) )) (goto_statement "goto LAB_000b22d0;" goto statement_identifier ;)) (expression_statement "iVar25 = piVar21[iVar10 * 2 + 2];" (assignment_expression "iVar25 = piVar21[iVar10 * 2 + 2]" identifier = (subscript_expression "piVar21[iVar10 * 2 + 2]" identifier [ (binary_expression "iVar10 * 2 + 2" (binary_expression "iVar10 * 2" identifier * number_literal) + number_literal) ])) ;) (labeled_statement "LAB_000b2350:\n                          iVar10 = iVar10 + 1;" statement_identifier : (expression_statement "iVar10 = iVar10 + 1;" (assignment_expression "iVar10 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ;)) (if_statement "if (iStack_74 < iVar25) goto LAB_000b22d0;" if (parenthesized_expression "(iStack_74 < iVar25)" ( (binary_expression "iStack_74 < iVar25" identifier < identifier) )) (goto_statement "goto LAB_000b22d0;" goto statement_identifier ;)) }) (else_clause "else if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }" else (if_statement "if (piVar21[iVar10 * 2 + 1] == -1) {\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }" if (parenthesized_expression "(piVar21[iVar10 * 2 + 1] == -1)" ( (binary_expression "piVar21[iVar10 * 2 + 1] == -1" (subscript_expression "piVar21[iVar10 * 2 + 1]" identifier [ (binary_expression "iVar10 * 2 + 1" (binary_expression "iVar10 * 2" identifier * number_literal) + number_literal) ]) == number_literal) )) (compound_statement "{\n                          if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }\n                          goto LAB_000b22d0;\n                        }" { (if_statement "if (iVar10 + 1U < uVar4) {\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }" if (parenthesized_expression "(iVar10 + 1U < uVar4)" ( (binary_expression "iVar10 + 1U < uVar4" (binary_expression "iVar10 + 1U" identifier + number_literal) < identifier) )) (compound_statement "{\n                            iVar25 = piVar21[iVar10 * 2 + 2];\n                            goto LAB_000b2350;\n                          }" { (expression_statement "iVar25 = piVar21[iVar10 * 2 + 2];" (assignment_expression "iVar25 = piVar21[iVar10 * 2 + 2]" identifier = (subscript_expression "piVar21[iVar10 * 2 + 2]" identifier [ (binary_expression "iVar10 * 2 + 2" (binary_expression "iVar10 * 2" identifier * number_literal) + number_literal) ])) ;) (goto_statement "goto LAB_000b2350;" goto statement_identifier ;) })) (goto_statement "goto LAB_000b22d0;" goto statement_identifier ;) })))) }) while (parenthesized_expression "(iVar25 < iStack_74)" ( (binary_expression "iVar25 < iStack_74" identifier < identifier) )) ;) })) (expression_statement "(*(code *)PTR_puts_0012afb4)(line);" (call_expression "(*(code *)PTR_puts_0012afb4)(line)" (parenthesized_expression "(*(code *)PTR_puts_0012afb4)" ( (pointer_expression "*(code *)PTR_puts_0012afb4" * (cast_expression "(code *)PTR_puts_0012afb4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(line)" ( identifier ))) ;) })) }) (else_clause "else {\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }" else (compound_statement "{\n                  delimiter[1] = '\0';\n                  delimiter[0] = (char)puVar22;\n                  iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);\n                  puVar3 = PTR_stdout_0012ae40;\n                  if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }\n                  if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }\n                }" { (expression_statement "delimiter[1] = '\0';" (assignment_expression "delimiter[1] = '\0'" (subscript_expression "delimiter[1]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "delimiter[0] = (char)puVar22;" (assignment_expression "delimiter[0] = (char)puVar22" (subscript_expression "delimiter[0]" identifier [ number_literal ]) = (cast_expression "(char)puVar22" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22);" (assignment_expression "iVar25 = (*(code *)PTR_strchr_0012af54)(line,puVar22)" identifier = (call_expression "(*(code *)PTR_strchr_0012af54)(line,puVar22)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" ( (pointer_expression "*(code *)PTR_strchr_0012af54" * (cast_expression "(code *)PTR_strchr_0012af54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(line,puVar22)" ( identifier , identifier )))) ;) (expression_statement "puVar3 = PTR_stdout_0012ae40;" (assignment_expression "puVar3 = PTR_stdout_0012ae40" identifier = identifier) ;) (if_statement "if (iVar25 != 0) {\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }" if (parenthesized_expression "(iVar25 != 0)" ( (binary_expression "iVar25 != 0" identifier != number_literal) )) (compound_statement "{\n                    iVar25 = 0;\n                    iVar10 = -1;\n                    uStack_68 = 1;\n                    iStack_60 = 0;\n                    pcVar9 = pcVar8;\n                    piStack_70 = piVar21;\n                    while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }\nLAB_000b252c:\n                    iVar10 = *(int *)puVar3;\n                    pcVar9 = *(char **)(iVar10 + 0x14);\n                    if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;\n                    goto LAB_000b22bc;\n                  }" { (expression_statement "iVar25 = 0;" (assignment_expression "iVar25 = 0" identifier = number_literal) ;) (expression_statement "iVar10 = -1;" (assignment_expression "iVar10 = -1" identifier = number_literal) ;) (expression_statement "uStack_68 = 1;" (assignment_expression "uStack_68 = 1" identifier = number_literal) ;) (expression_statement "iStack_60 = 0;" (assignment_expression "iStack_60 = 0" identifier = number_literal) ;) (expression_statement "pcVar9 = pcVar8;" (assignment_expression "pcVar9 = pcVar8" identifier = identifier) ;) (expression_statement "piStack_70 = piVar21;" (assignment_expression "piStack_70 = piVar21" identifier = identifier) ;) (while_statement "while( true ) {\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n                      iVar27 = *piStack_70;\n                      do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);\n                      if (uVar4 <= uStack_68) break;\nLAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;\n                      uStack_68 = uStack_68 + 1;\n                    }" { (expression_statement "iVar27 = *piStack_70;" (assignment_expression "iVar27 = *piStack_70" identifier = (pointer_expression "*piStack_70" * identifier)) ;) (do_statement "do {\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      } while (piStack_70[1] != -1);" do (compound_statement "{\n                        for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }\n                        if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }\n                        iVar27 = iVar27 + 1;\n                        pcVar9 = line;\n                        if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }\n                        if (line == (char *)0x0) goto LAB_000b252c;\n                      }" { (for_statement "for (; (pcVar9 != (char *)0x0 && (iVar10 < iVar27)); iVar10 = iVar10 + 1) {\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }" for ( ; (parenthesized_expression "(pcVar9 != (char *)0x0 && (iVar10 < iVar27))" ( (binary_expression "pcVar9 != (char *)0x0 && (iVar10 < iVar27)" (binary_expression "pcVar9 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) && (parenthesized_expression "(iVar10 < iVar27)" ( (binary_expression "iVar10 < iVar27" identifier < identifier) ))) )) ; (assignment_expression "iVar10 = iVar10 + 1" identifier = (binary_expression "iVar10 + 1" identifier + number_literal)) ) (compound_statement "{\n                          iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);\n                          pcVar9 = line;\n                        }" { (expression_statement "iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter);" (assignment_expression "iVar25 = (*(code *)PTR_strsep_0012afa0)(&line,delimiter)" identifier = (call_expression "(*(code *)PTR_strsep_0012afa0)(&line,delimiter)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" ( (pointer_expression "*(code *)PTR_strsep_0012afa0" * (cast_expression "(code *)PTR_strsep_0012afa0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&line,delimiter)" ( (pointer_expression "&line" & identifier) , identifier )))) ;) (expression_statement "pcVar9 = line;" (assignment_expression "pcVar9 = line" identifier = identifier) ;) })) (if_statement "if (((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')) {\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }" if (parenthesized_expression "(((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0'))" ( (binary_expression "((iVar25 != 0) && (iVar10 == iVar27)) &&\n                           (*(char *)(iVar23 + iVar10) == '\0')" (parenthesized_expression "((iVar25 != 0) && (iVar10 == iVar27))" ( (binary_expression "(iVar25 != 0) && (iVar10 == iVar27)" (parenthesized_expression "(iVar25 != 0)" ( (binary_expression "iVar25 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar10 == iVar27)" ( (binary_expression "iVar10 == iVar27" identifier == identifier) ))) )) && (parenthesized_expression "(*(char *)(iVar23 + iVar10) == '\0')" ( (binary_expression "*(char *)(iVar23 + iVar10) == '\0'" (pointer_expression "*(char *)(iVar23 + iVar10)" * (cast_expression "(char *)(iVar23 + iVar10)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + iVar10)" ( (binary_expression "iVar23 + iVar10" identifier + identifier) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                          iVar14 = *(int *)puVar3;\n                          if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }\n                          iStack_60 = iStack_60 + 1;\n                          (*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);\n                          *(char *)(iVar23 + iVar10) = 'X';\n                        }" { (expression_statement "iVar14 = *(int *)puVar3;" (assignment_expression "iVar14 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (iStack_60 != 0) {\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }" if (parenthesized_expression "(iStack_60 != 0)" ( (binary_expression "iStack_60 != 0" identifier != number_literal) )) (compound_statement "{\n                            pcVar9 = *(char **)(iVar14 + 0x14);\n                            if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }\n                          }" { (expression_statement "pcVar9 = *(char **)(iVar14 + 0x14);" (assignment_expression "pcVar9 = *(char **)(iVar14 + 0x14)" identifier = (pointer_expression "*(char **)(iVar14 + 0x14)" * (cast_expression "(char **)(iVar14 + 0x14)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar14 + 0x14)" ( (binary_expression "iVar14 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (pcVar9 < *(char **)(iVar14 + 0x18)) {\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }\n                            else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }" if (parenthesized_expression "(pcVar9 < *(char **)(iVar14 + 0x18))" ( (binary_expression "pcVar9 < *(char **)(iVar14 + 0x18)" identifier < (pointer_expression "*(char **)(iVar14 + 0x18)" * (cast_expression "(char **)(iVar14 + 0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar14 + 0x18)" ( (binary_expression "iVar14 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n                              *(char **)(iVar14 + 0x14) = pcVar9 + 1;\n                              *pcVar9 = (char)puVar22;\n                              iVar14 = *(int *)puVar3;\n                            }" { (expression_statement "*(char **)(iVar14 + 0x14) = pcVar9 + 1;" (assignment_expression "*(char **)(iVar14 + 0x14) = pcVar9 + 1" (pointer_expression "*(char **)(iVar14 + 0x14)" * (cast_expression "(char **)(iVar14 + 0x14)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar14 + 0x14)" ( (binary_expression "iVar14 + 0x14" identifier + number_literal) )))) = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar9 = (char)puVar22;" (assignment_expression "*pcVar9 = (char)puVar22" (pointer_expression "*pcVar9" * identifier) = (cast_expression "(char)puVar22" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "iVar14 = *(int *)puVar3;" (assignment_expression "iVar14 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) }) (else_clause "else {\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }" else (compound_statement "{\n                              (*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);\n                              iVar14 = *(int *)puVar3;\n                            }" { (expression_statement "(*(code *)PTR___overflow_0012ada8)(iVar14,puVar22);" (call_expression "(*(code *)PTR___overflow_0012ada8)(iVar14,puVar22)" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" ( (pointer_expression "*(code *)PTR___overflow_0012ada8" * (cast_expression "(code *)PTR___overflow_0012ada8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar14,puVar22)" ( identifier , identifier ))) ;) (expression_statement "iVar14 = *(int *)puVar3;" (assignment_expression "iVar14 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) }))) })) (expression_statement "iStack_60 = iStack_60 + 1;" (assignment_expression "iStack_60 = iStack_60 + 1" identifier = (binary_expression "iStack_60 + 1" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14);" (call_expression "(*(code *)PTR_fputs_unlocked_0012b204)(iVar25,iVar14)" (parenthesized_expression "(*(code *)PTR_fputs_unlocked_0012b204)" ( (pointer_expression "*(code *)PTR_fputs_unlocked_0012b204" * (cast_expression "(code *)PTR_fputs_unlocked_0012b204" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar25,iVar14)" ( identifier , identifier ))) ;) (expression_statement "*(char *)(iVar23 + iVar10) = 'X';" (assignment_expression "*(char *)(iVar23 + iVar10) = 'X'" (pointer_expression "*(char *)(iVar23 + iVar10)" * (cast_expression "(char *)(iVar23 + iVar10)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + iVar10)" ( (binary_expression "iVar23 + iVar10" identifier + identifier) )))) = (char_literal "'X'" ' character ')) ;) })) (expression_statement "iVar27 = iVar27 + 1;" (assignment_expression "iVar27 = iVar27 + 1" identifier = (binary_expression "iVar27 + 1" identifier + number_literal)) ;) (expression_statement "pcVar9 = line;" (assignment_expression "pcVar9 = line" identifier = identifier) ;) (if_statement "if (piStack_70[1] < iVar27) {\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }" if (parenthesized_expression "(piStack_70[1] < iVar27)" ( (binary_expression "piStack_70[1] < iVar27" (subscript_expression "piStack_70[1]" identifier [ number_literal ]) < identifier) )) (compound_statement "{\n                          if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;\n                          goto LAB_000b24fc;\n                        }" { (if_statement "if ((uVar4 <= uStack_68) || (line == (char *)0x0)) goto LAB_000b252c;" if (parenthesized_expression "((uVar4 <= uStack_68) || (line == (char *)0x0))" ( (binary_expression "(uVar4 <= uStack_68) || (line == (char *)0x0)" (parenthesized_expression "(uVar4 <= uStack_68)" ( (binary_expression "uVar4 <= uStack_68" identifier <= identifier) )) || (parenthesized_expression "(line == (char *)0x0)" ( (binary_expression "line == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (goto_statement "goto LAB_000b252c;" goto statement_identifier ;)) (goto_statement "goto LAB_000b24fc;" goto statement_identifier ;) })) (if_statement "if (line == (char *)0x0) goto LAB_000b252c;" if (parenthesized_expression "(line == (char *)0x0)" ( (binary_expression "line == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b252c;" goto statement_identifier ;)) }) while (parenthesized_expression "(piStack_70[1] != -1)" ( (binary_expression "piStack_70[1] != -1" (subscript_expression "piStack_70[1]" identifier [ number_literal ]) != number_literal) )) ;) (if_statement "if (uVar4 <= uStack_68) break;" if (parenthesized_expression "(uVar4 <= uStack_68)" ( (binary_expression "uVar4 <= uStack_68" identifier <= identifier) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000b24fc:\n                      piStack_70 = piStack_70 + 2;" statement_identifier : (expression_statement "piStack_70 = piStack_70 + 2;" (assignment_expression "piStack_70 = piStack_70 + 2" identifier = (binary_expression "piStack_70 + 2" identifier + number_literal)) ;)) (expression_statement "uStack_68 = uStack_68 + 1;" (assignment_expression "uStack_68 = uStack_68 + 1" identifier = (binary_expression "uStack_68 + 1" identifier + number_literal)) ;) })) (labeled_statement "LAB_000b252c:\n                    iVar10 = *(int *)puVar3;" statement_identifier : (expression_statement "iVar10 = *(int *)puVar3;" (assignment_expression "iVar10 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;)) (expression_statement "pcVar9 = *(char **)(iVar10 + 0x14);" (assignment_expression "pcVar9 = *(char **)(iVar10 + 0x14)" identifier = (pointer_expression "*(char **)(iVar10 + 0x14)" * (cast_expression "(char **)(iVar10 + 0x14)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x14)" ( (binary_expression "iVar10 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (pcVar9 < *(char **)(iVar10 + 0x18)) goto LAB_000b2544;" if (parenthesized_expression "(pcVar9 < *(char **)(iVar10 + 0x18))" ( (binary_expression "pcVar9 < *(char **)(iVar10 + 0x18)" identifier < (pointer_expression "*(char **)(iVar10 + 0x18)" * (cast_expression "(char **)(iVar10 + 0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x18)" ( (binary_expression "iVar10 + 0x18" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000b2544;" goto statement_identifier ;)) (goto_statement "goto LAB_000b22bc;" goto statement_identifier ;) })) (if_statement "if ((uVar26 & 0x10) == 0) {\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }" if (parenthesized_expression "((uVar26 & 0x10) == 0)" ( (binary_expression "(uVar26 & 0x10) == 0" (parenthesized_expression "(uVar26 & 0x10)" ( (binary_expression "uVar26 & 0x10" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                    (*(code *)PTR_puts_0012afb4)(pcVar8);\n                  }" { (expression_statement "(*(code *)PTR_puts_0012afb4)(pcVar8);" (call_expression "(*(code *)PTR_puts_0012afb4)(pcVar8)" (parenthesized_expression "(*(code *)PTR_puts_0012afb4)" ( (pointer_expression "*(code *)PTR_puts_0012afb4" * (cast_expression "(code *)PTR_puts_0012afb4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar8)" ( identifier ))) ;) })) }))) }) (else_clause "else {\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }" else (compound_statement "{\n                iVar10 = *(int *)PTR_stdout_0012ae40;\n                pcVar9 = *(char **)(iVar10 + 0x14);\n                pcVar13 = *(char **)(iVar10 + 0x18);\n                piVar28 = piVar21;\n                do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);\n                bVar2 = pcVar9 < pcVar13;\nLAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }\n              }" { (expression_statement "iVar10 = *(int *)PTR_stdout_0012ae40;" (assignment_expression "iVar10 = *(int *)PTR_stdout_0012ae40" identifier = (pointer_expression "*(int *)PTR_stdout_0012ae40" * (cast_expression "(int *)PTR_stdout_0012ae40" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pcVar9 = *(char **)(iVar10 + 0x14);" (assignment_expression "pcVar9 = *(char **)(iVar10 + 0x14)" identifier = (pointer_expression "*(char **)(iVar10 + 0x14)" * (cast_expression "(char **)(iVar10 + 0x14)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x14)" ( (binary_expression "iVar10 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "pcVar13 = *(char **)(iVar10 + 0x18);" (assignment_expression "pcVar13 = *(char **)(iVar10 + 0x18)" identifier = (pointer_expression "*(char **)(iVar10 + 0x18)" * (cast_expression "(char **)(iVar10 + 0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x18)" ( (binary_expression "iVar10 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "piVar28 = piVar21;" (assignment_expression "piVar28 = piVar21" identifier = identifier) ;) (do_statement "do {\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                } while (piVar21 + uVar4 * 2 != piVar28);" do (compound_statement "{\n                  while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }\n                  pcVar17 = (char *)(iVar23 + iVar27);\n                  do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);\n                  piVar28 = piVar28 + 2;\n                }" { (while_statement "while (iVar27 = *piVar28, iVar25 <= iVar27) {\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }" while (parenthesized_expression "(iVar27 = *piVar28, iVar25 <= iVar27)" ( (comma_expression "iVar27 = *piVar28, iVar25 <= iVar27" (assignment_expression "iVar27 = *piVar28" identifier = (pointer_expression "*piVar28" * identifier)) , (binary_expression "iVar25 <= iVar27" identifier <= identifier)) )) (compound_statement "{\nLAB_000b22a0:\n                    piVar28 = piVar28 + 2;\n                    if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }\n                  }" { (labeled_statement "LAB_000b22a0:\n                    piVar28 = piVar28 + 2;" statement_identifier : (expression_statement "piVar28 = piVar28 + 2;" (assignment_expression "piVar28 = piVar28 + 2" identifier = (binary_expression "piVar28 + 2" identifier + number_literal)) ;)) (if_statement "if (piVar21 + uVar4 * 2 == piVar28) {\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }" if (parenthesized_expression "(piVar21 + uVar4 * 2 == piVar28)" ( (binary_expression "piVar21 + uVar4 * 2 == piVar28" (binary_expression "piVar21 + uVar4 * 2" identifier + (binary_expression "uVar4 * 2" identifier * number_literal)) == identifier) )) (compound_statement "{\n                      bVar2 = pcVar9 < pcVar13;\n                      goto LAB_000b22b4;\n                    }" { (expression_statement "bVar2 = pcVar9 < pcVar13;" (assignment_expression "bVar2 = pcVar9 < pcVar13" identifier = (binary_expression "pcVar9 < pcVar13" identifier < identifier)) ;) (goto_statement "goto LAB_000b22b4;" goto statement_identifier ;) })) })) (expression_statement "pcVar17 = (char *)(iVar23 + iVar27);" (assignment_expression "pcVar17 = (char *)(iVar23 + iVar27)" identifier = (cast_expression "(char *)(iVar23 + iVar27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar23 + iVar27)" ( (binary_expression "iVar23 + iVar27" identifier + identifier) )))) ;) (do_statement "do {\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  } while (iVar25 != iVar27);" do (compound_statement "{\n                    if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    iVar27 = iVar27 + 1;\n                    pcVar17 = pcVar17 + 1;\n                  }" { (if_statement "if (*pcVar17 == '\0') {\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }\n                    else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }" if (parenthesized_expression "(*pcVar17 == '\0')" ( (binary_expression "*pcVar17 == '\0'" (pointer_expression "*pcVar17" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                      *pcVar17 = 'X';\n                      cVar1 = line[iVar27];\n                      if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }\n                      *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                      *pcVar9 = cVar1;\n                      iVar10 = *(int *)puVar3;\n                      pcVar9 = *(char **)(iVar10 + 0x14);\n                      pcVar13 = *(char **)(iVar10 + 0x18);\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }" { (expression_statement "*pcVar17 = 'X';" (assignment_expression "*pcVar17 = 'X'" (pointer_expression "*pcVar17" * identifier) = (char_literal "'X'" ' character ')) ;) (expression_statement "cVar1 = line[iVar27];" (assignment_expression "cVar1 = line[iVar27]" identifier = (subscript_expression "line[iVar27]" identifier [ identifier ])) ;) (if_statement "if (pcVar13 <= pcVar9) {\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }" if (parenthesized_expression "(pcVar13 <= pcVar9)" ( (binary_expression "pcVar13 <= pcVar9" identifier <= identifier) )) (compound_statement "{\n                        (*(code *)PTR___overflow_0012ada8)();\n                        iVar10 = *(int *)puVar3;\n                        pcVar9 = *(char **)(iVar10 + 0x14);\n                        pcVar13 = *(char **)(iVar10 + 0x18);\n                        goto LAB_000b228c;\n                      }" { (expression_statement "(*(code *)PTR___overflow_0012ada8)();" (call_expression "(*(code *)PTR___overflow_0012ada8)()" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" ( (pointer_expression "*(code *)PTR___overflow_0012ada8" * (cast_expression "(code *)PTR___overflow_0012ada8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iVar10 = *(int *)puVar3;" (assignment_expression "iVar10 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pcVar9 = *(char **)(iVar10 + 0x14);" (assignment_expression "pcVar9 = *(char **)(iVar10 + 0x14)" identifier = (pointer_expression "*(char **)(iVar10 + 0x14)" * (cast_expression "(char **)(iVar10 + 0x14)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x14)" ( (binary_expression "iVar10 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "pcVar13 = *(char **)(iVar10 + 0x18);" (assignment_expression "pcVar13 = *(char **)(iVar10 + 0x18)" identifier = (pointer_expression "*(char **)(iVar10 + 0x18)" * (cast_expression "(char **)(iVar10 + 0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x18)" ( (binary_expression "iVar10 + 0x18" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000b228c;" goto statement_identifier ;) })) (expression_statement "*(char **)(iVar10 + 0x14) = pcVar9 + 1;" (assignment_expression "*(char **)(iVar10 + 0x14) = pcVar9 + 1" (pointer_expression "*(char **)(iVar10 + 0x14)" * (cast_expression "(char **)(iVar10 + 0x14)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x14)" ( (binary_expression "iVar10 + 0x14" identifier + number_literal) )))) = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar9 = cVar1;" (assignment_expression "*pcVar9 = cVar1" (pointer_expression "*pcVar9" * identifier) = identifier) ;) (expression_statement "iVar10 = *(int *)puVar3;" (assignment_expression "iVar10 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pcVar9 = *(char **)(iVar10 + 0x14);" (assignment_expression "pcVar9 = *(char **)(iVar10 + 0x14)" identifier = (pointer_expression "*(char **)(iVar10 + 0x14)" * (cast_expression "(char **)(iVar10 + 0x14)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x14)" ( (binary_expression "iVar10 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "pcVar13 = *(char **)(iVar10 + 0x18);" (assignment_expression "pcVar13 = *(char **)(iVar10 + 0x18)" identifier = (pointer_expression "*(char **)(iVar10 + 0x18)" * (cast_expression "(char **)(iVar10 + 0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x18)" ( (binary_expression "iVar10 + 0x18" identifier + number_literal) ))))) ;) (if_statement "if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" if (parenthesized_expression "(piVar28[1] < iVar27 + 1)" ( (binary_expression "piVar28[1] < iVar27 + 1" (subscript_expression "piVar28[1]" identifier [ number_literal ]) < (binary_expression "iVar27 + 1" identifier + number_literal)) )) (goto_statement "goto LAB_000b22a0;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }" else (compound_statement "{\nLAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                    }" { (labeled_statement "LAB_000b228c:\n                      if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" statement_identifier : (if_statement "if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" if (parenthesized_expression "(piVar28[1] < iVar27 + 1)" ( (binary_expression "piVar28[1] < iVar27 + 1" (subscript_expression "piVar28[1]" identifier [ number_literal ]) < (binary_expression "iVar27 + 1" identifier + number_literal)) )) (goto_statement "goto LAB_000b22a0;" goto statement_identifier ;))) }))) (expression_statement "iVar27 = iVar27 + 1;" (assignment_expression "iVar27 = iVar27 + 1" identifier = (binary_expression "iVar27 + 1" identifier + number_literal)) ;) (expression_statement "pcVar17 = pcVar17 + 1;" (assignment_expression "pcVar17 = pcVar17 + 1" identifier = (binary_expression "pcVar17 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar25 != iVar27)" ( (binary_expression "iVar25 != iVar27" identifier != identifier) )) ;) (expression_statement "piVar28 = piVar28 + 2;" (assignment_expression "piVar28 = piVar28 + 2" identifier = (binary_expression "piVar28 + 2" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar21 + uVar4 * 2 != piVar28)" ( (binary_expression "piVar21 + uVar4 * 2 != piVar28" (binary_expression "piVar21 + uVar4 * 2" identifier + (binary_expression "uVar4 * 2" identifier * number_literal)) != identifier) )) ;) (expression_statement "bVar2 = pcVar9 < pcVar13;" (assignment_expression "bVar2 = pcVar9 < pcVar13" identifier = (binary_expression "pcVar9 < pcVar13" identifier < identifier)) ;) (labeled_statement "LAB_000b22b4:\n                if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }" statement_identifier : (if_statement "if (bVar2) {\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }\n                else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }" if (parenthesized_expression "(bVar2)" ( identifier )) (compound_statement "{\nLAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;\n                  *pcVar9 = '\n';\n                }" { (labeled_statement "LAB_000b2544:\n                  *(char **)(iVar10 + 0x14) = pcVar9 + 1;" statement_identifier : (expression_statement "*(char **)(iVar10 + 0x14) = pcVar9 + 1;" (assignment_expression "*(char **)(iVar10 + 0x14) = pcVar9 + 1" (pointer_expression "*(char **)(iVar10 + 0x14)" * (cast_expression "(char **)(iVar10 + 0x14)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar10 + 0x14)" ( (binary_expression "iVar10 + 0x14" identifier + number_literal) )))) = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;)) (expression_statement "*pcVar9 = '\n';" (assignment_expression "*pcVar9 = '\n'" (pointer_expression "*pcVar9" * identifier) = (char_literal "'\n'" ' escape_sequence ')) ;) }) (else_clause "else {\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }" else (compound_statement "{\nLAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);\n                }" { (labeled_statement "LAB_000b22bc:\n                  (*(code *)PTR___overflow_0012ada8)(iVar10,10);" statement_identifier : (expression_statement "(*(code *)PTR___overflow_0012ada8)(iVar10,10);" (call_expression "(*(code *)PTR___overflow_0012ada8)(iVar10,10)" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" ( (pointer_expression "*(code *)PTR___overflow_0012ada8" * (cast_expression "(code *)PTR___overflow_0012ada8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar10,10)" ( identifier , number_literal ))) ;)) })))) }))) (labeled_statement "LAB_000b22d0:\n              iStack_74 = iStack_74 + 1;" statement_identifier : (expression_statement "iStack_74 = iStack_74 + 1;" (assignment_expression "iStack_74 = iStack_74 + 1" identifier = (binary_expression "iStack_74 + 1" identifier + number_literal)) ;)) (expression_statement "(*(code *)PTR_free_0012b168)(iVar23);" (call_expression "(*(code *)PTR_free_0012b168)(iVar23)" (parenthesized_expression "(*(code *)PTR_free_0012b168)" ( (pointer_expression "*(code *)PTR_free_0012b168" * (cast_expression "(code *)PTR_free_0012b168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar23)" ( identifier ))) ;) (expression_statement "(*(code *)PTR_free_0012b168)(pcVar8);" (call_expression "(*(code *)PTR_free_0012b168)(pcVar8)" (parenthesized_expression "(*(code *)PTR_free_0012b168)" ( (pointer_expression "*(code *)PTR_free_0012b168" * (cast_expression "(code *)PTR_free_0012b168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar8)" ( identifier ))) ;) })) (expression_statement "(*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5);" (call_expression "(*(code *)PTR_fclose_if_not_stdin_0012a3f4)(iVar5)" (parenthesized_expression "(*(code *)PTR_fclose_if_not_stdin_0012a3f4)" ( (pointer_expression "*(code *)PTR_fclose_if_not_stdin_0012a3f4" * (cast_expression "(code *)PTR_fclose_if_not_stdin_0012a3f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar5)" ( identifier ))) ;) }))) (expression_statement "ppcVar20 = ppcVar20 + 1;" (assignment_expression "ppcVar20 = ppcVar20 + 1" identifier = (binary_expression "ppcVar20 + 1" identifier + number_literal)) ;) (if_statement "if (*ppcVar20 == (char *)0x0) {\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }" if (parenthesized_expression "(*ppcVar20 == (char *)0x0)" ( (binary_expression "*ppcVar20 == (char *)0x0" (pointer_expression "*ppcVar20" * identifier) == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);\n            return iVar5;\n          }" { (expression_statement "iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);" (assignment_expression "iVar5 = (*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c)" identifier = (call_expression "(*(code *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c)" (parenthesized_expression "(*(code *)PTR_fflush_stdout_and_exit_0012a3f8)" ( (pointer_expression "*(code *)PTR_fflush_stdout_and_exit_0012a3f8" * (cast_expression "(code *)PTR_fflush_stdout_and_exit_0012a3f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uStack_5c)" ( identifier )))) ;) (return_statement "return iVar5;" return identifier ;) })) }) while (parenthesized_expression "( true )" ( true )) ;) })) }) while (parenthesized_expression "(*ltok == '\0')" ( (binary_expression "*ltok == '\0'" (pointer_expression "*ltok" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) ;) (expression_statement "pcVar8 = (char *)(*(code *)PTR_strsep_0012afa0)(&ltok,puVar7);" (assignment_expression "pcVar8 = (char *)(*(code *)PTR_strsep_0012afa0)(&ltok,puVar7)" identifier = (cast_expression "(char *)(*(code *)PTR_strsep_0012afa0)(&ltok,puVar7)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_strsep_0012afa0)(&ltok,puVar7)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" ( (pointer_expression "*(code *)PTR_strsep_0012afa0" * (cast_expression "(code *)PTR_strsep_0012afa0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&ltok,puVar7)" ( (pointer_expression "&ltok" & identifier) , identifier ))))) ;) (if_statement "if ((*pcVar8 == '\0') || (iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8), iVar25 == 0))\n    {\n      iVar25 = 0;\n      if (ltok != (char *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      iVar23 = -1;\n    }\n    else {\n      iVar25 = iVar25 + -1;\n      if (ltok == (char *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      iVar23 = 0x7fffffff;\n      if (*ltok != '\0') {\n        iVar23 = 0x7ffffffe;\n        iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();\n        if (iVar10 != 0) {\n          iVar23 = iVar10 + -1;\n        }\n        if (iVar25 == iVar23) {\n          iVar23 = -1;\n        }\n      }\n    }" if (parenthesized_expression "((*pcVar8 == '\0') || (iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8), iVar25 == 0))" ( (binary_expression "(*pcVar8 == '\0') || (iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8), iVar25 == 0)" (parenthesized_expression "(*pcVar8 == '\0')" ( (binary_expression "*pcVar8 == '\0'" (pointer_expression "*pcVar8" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8), iVar25 == 0)" ( (comma_expression "iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8), iVar25 == 0" (assignment_expression "iVar25 = (*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8)" identifier = (call_expression "(*(code *)PTR_xatoi_positive_0012a3e8)(pcVar8)" (parenthesized_expression "(*(code *)PTR_xatoi_positive_0012a3e8)" ( (pointer_expression "*(code *)PTR_xatoi_positive_0012a3e8" * (cast_expression "(code *)PTR_xatoi_positive_0012a3e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar8)" ( identifier )))) , (binary_expression "iVar25 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n      iVar25 = 0;\n      if (ltok != (char *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      iVar23 = -1;\n    }" { (expression_statement "iVar25 = 0;" (assignment_expression "iVar25 = 0" identifier = number_literal) ;) (if_statement "if (ltok != (char *)0x0) goto LAB_000b25f8;" if (parenthesized_expression "(ltok != (char *)0x0)" ( (binary_expression "ltok != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b25f8;" goto statement_identifier ;)) (labeled_statement "LAB_000b20c8:\n      iVar23 = -1;" statement_identifier : (expression_statement "iVar23 = -1;" (assignment_expression "iVar23 = -1" identifier = number_literal) ;)) }) (else_clause "else {\n      iVar25 = iVar25 + -1;\n      if (ltok == (char *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      iVar23 = 0x7fffffff;\n      if (*ltok != '\0') {\n        iVar23 = 0x7ffffffe;\n        iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();\n        if (iVar10 != 0) {\n          iVar23 = iVar10 + -1;\n        }\n        if (iVar25 == iVar23) {\n          iVar23 = -1;\n        }\n      }\n    }" else (compound_statement "{\n      iVar25 = iVar25 + -1;\n      if (ltok == (char *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      iVar23 = 0x7fffffff;\n      if (*ltok != '\0') {\n        iVar23 = 0x7ffffffe;\n        iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();\n        if (iVar10 != 0) {\n          iVar23 = iVar10 + -1;\n        }\n        if (iVar25 == iVar23) {\n          iVar23 = -1;\n        }\n      }\n    }" { (expression_statement "iVar25 = iVar25 + -1;" (assignment_expression "iVar25 = iVar25 + -1" identifier = (binary_expression "iVar25 + -1" identifier + number_literal)) ;) (if_statement "if (ltok == (char *)0x0) goto LAB_000b20c8;" if (parenthesized_expression "(ltok == (char *)0x0)" ( (binary_expression "ltok == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b20c8;" goto statement_identifier ;)) (labeled_statement "LAB_000b25f8:\n      iVar23 = 0x7fffffff;" statement_identifier : (expression_statement "iVar23 = 0x7fffffff;" (assignment_expression "iVar23 = 0x7fffffff" identifier = number_literal) ;)) (if_statement "if (*ltok != '\0') {\n        iVar23 = 0x7ffffffe;\n        iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();\n        if (iVar10 != 0) {\n          iVar23 = iVar10 + -1;\n        }\n        if (iVar25 == iVar23) {\n          iVar23 = -1;\n        }\n      }" if (parenthesized_expression "(*ltok != '\0')" ( (binary_expression "*ltok != '\0'" (pointer_expression "*ltok" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        iVar23 = 0x7ffffffe;\n        iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();\n        if (iVar10 != 0) {\n          iVar23 = iVar10 + -1;\n        }\n        if (iVar25 == iVar23) {\n          iVar23 = -1;\n        }\n      }" { (expression_statement "iVar23 = 0x7ffffffe;" (assignment_expression "iVar23 = 0x7ffffffe" identifier = number_literal) ;) (expression_statement "iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)();" (assignment_expression "iVar10 = (*(code *)PTR_xatoi_positive_0012a3e8)()" identifier = (call_expression "(*(code *)PTR_xatoi_positive_0012a3e8)()" (parenthesized_expression "(*(code *)PTR_xatoi_positive_0012a3e8)" ( (pointer_expression "*(code *)PTR_xatoi_positive_0012a3e8" * (cast_expression "(code *)PTR_xatoi_positive_0012a3e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar10 != 0) {\n          iVar23 = iVar10 + -1;\n        }" if (parenthesized_expression "(iVar10 != 0)" ( (binary_expression "iVar10 != 0" identifier != number_literal) )) (compound_statement "{\n          iVar23 = iVar10 + -1;\n        }" { (expression_statement "iVar23 = iVar10 + -1;" (assignment_expression "iVar23 = iVar10 + -1" identifier = (binary_expression "iVar10 + -1" identifier + number_literal)) ;) })) (if_statement "if (iVar25 == iVar23) {\n          iVar23 = -1;\n        }" if (parenthesized_expression "(iVar25 == iVar23)" ( (binary_expression "iVar25 == iVar23" identifier == identifier) )) (compound_statement "{\n          iVar23 = -1;\n        }" { (expression_statement "iVar23 = -1;" (assignment_expression "iVar23 = -1" identifier = number_literal) ;) })) })) }))) (expression_statement "piVar21 = (int *)(*(code *)PTR_xrealloc_vector_helper_0012a3b8)(piVar21,0x804,uVar4);" (assignment_expression "piVar21 = (int *)(*(code *)PTR_xrealloc_vector_helper_0012a3b8)(piVar21,0x804,uVar4)" identifier = (cast_expression "(int *)(*(code *)PTR_xrealloc_vector_helper_0012a3b8)(piVar21,0x804,uVar4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_xrealloc_vector_helper_0012a3b8)(piVar21,0x804,uVar4)" (parenthesized_expression "(*(code *)PTR_xrealloc_vector_helper_0012a3b8)" ( (pointer_expression "*(code *)PTR_xrealloc_vector_helper_0012a3b8" * (cast_expression "(code *)PTR_xrealloc_vector_helper_0012a3b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar21,0x804,uVar4)" ( identifier , number_literal , identifier ))))) ;) (expression_statement "iVar10 = uVar4 * 2;" (assignment_expression "iVar10 = uVar4 * 2" identifier = (binary_expression "uVar4 * 2" identifier * number_literal)) ;) (expression_statement "uVar4 = uVar4 + 1;" (assignment_expression "uVar4 = uVar4 + 1" identifier = (binary_expression "uVar4 + 1" identifier + number_literal)) ;) (expression_statement "piVar21[iVar10] = iVar25;" (assignment_expression "piVar21[iVar10] = iVar25" (subscript_expression "piVar21[iVar10]" identifier [ identifier ]) = identifier) ;) (expression_statement "(piVar21 + iVar10)[1] = iVar23;" (assignment_expression "(piVar21 + iVar10)[1] = iVar23" (subscript_expression "(piVar21 + iVar10)[1]" (parenthesized_expression "(piVar21 + iVar10)" ( (binary_expression "piVar21 + iVar10" identifier + identifier) )) [ number_literal ]) = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit "undefined4 FUN_000b1f74(undefined4 param_1,int param_2)\n\n{\n  undefined1 uVar1;\n  bool bVar2;\n  undefined *puVar3;\n  uint uVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  char *pcVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  int iVar12;\n  uint uVar13;\n  uint uVar14;\n  undefined1 *puVar15;\n  int iVar16;\n  byte *pbVar17;\n  undefined4 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  int *piVar21;\n  undefined4 *puVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  int *piVar25;\n  uint uVar26;\n  int iVar27;\n  int *piVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined8 uVar31;\n  byte *local_1ec;\n  undefined4 local_1e8;\n  undefined4 local_1e4;\n  int local_1e0;\n  undefined4 local_1dc [2];\n  undefined4 local_1d4;\n  undefined4 local_1d0;\n  undefined4 local_1cc;\n  undefined4 local_1b4;\n  undefined1 auStack_1a8 [72];\n  undefined4 local_160;\n  undefined4 local_104;\n  undefined4 local_100;\n  undefined4 local_fc;\n  undefined4 *local_f8;\n  undefined4 local_f4;\n  undefined2 local_f0;\n  undefined1 local_ee;\n  byte *local_c4;\n  undefined4 uStack_c0;\n  int local_74;\n  int *local_70;\n  uint local_68;\n  int local_60;\n  undefined4 local_5c;\n  undefined1 auStack_3c [4];\n  byte *local_38;\n  int local_34;\n  undefined1 local_30;\n  undefined1 local_2f;\n  undefined4 local_2c;\n  \n  local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;\n  uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);\n  if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }\n  if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }\n  if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }\nLAB_000b204c:\n  uVar4 = 0;\n  piVar21 = (int *)0x0;\n  local_74 = *(int *)PTR_optind_0012b0ec;\n  puVar5 = PTR_FUN_0012a1a8 + -0x6a44;\n  puVar6 = PTR_FUN_0012a1a8 + -0x1308;\n  piVar23 = (int *)PTR_FUN_0012a1a8;\n  do {\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  } while( true );\n}\n\n" (function_definition "undefined4 FUN_000b1f74(undefined4 param_1,int param_2)\n\n{\n  undefined1 uVar1;\n  bool bVar2;\n  undefined *puVar3;\n  uint uVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  char *pcVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  int iVar12;\n  uint uVar13;\n  uint uVar14;\n  undefined1 *puVar15;\n  int iVar16;\n  byte *pbVar17;\n  undefined4 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  int *piVar21;\n  undefined4 *puVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  int *piVar25;\n  uint uVar26;\n  int iVar27;\n  int *piVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined8 uVar31;\n  byte *local_1ec;\n  undefined4 local_1e8;\n  undefined4 local_1e4;\n  int local_1e0;\n  undefined4 local_1dc [2];\n  undefined4 local_1d4;\n  undefined4 local_1d0;\n  undefined4 local_1cc;\n  undefined4 local_1b4;\n  undefined1 auStack_1a8 [72];\n  undefined4 local_160;\n  undefined4 local_104;\n  undefined4 local_100;\n  undefined4 local_fc;\n  undefined4 *local_f8;\n  undefined4 local_f4;\n  undefined2 local_f0;\n  undefined1 local_ee;\n  byte *local_c4;\n  undefined4 uStack_c0;\n  int local_74;\n  int *local_70;\n  uint local_68;\n  int local_60;\n  undefined4 local_5c;\n  undefined1 auStack_3c [4];\n  byte *local_38;\n  int local_34;\n  undefined1 local_30;\n  undefined1 local_2f;\n  undefined4 local_2c;\n  \n  local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;\n  uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);\n  if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }\n  if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }\n  if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }\nLAB_000b204c:\n  uVar4 = 0;\n  piVar21 = (int *)0x0;\n  local_74 = *(int *)PTR_optind_0012b0ec;\n  puVar5 = PTR_FUN_0012a1a8 + -0x6a44;\n  puVar6 = PTR_FUN_0012a1a8 + -0x1308;\n  piVar23 = (int *)PTR_FUN_0012a1a8;\n  do {\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  } while( true );\n}" type_identifier (function_declarator "FUN_000b1f74(undefined4 param_1,int param_2)" identifier (parameter_list "(undefined4 param_1,int param_2)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "int param_2" primitive_type identifier) ))) (compound_statement "{\n  undefined1 uVar1;\n  bool bVar2;\n  undefined *puVar3;\n  uint uVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  char *pcVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  int iVar12;\n  uint uVar13;\n  uint uVar14;\n  undefined1 *puVar15;\n  int iVar16;\n  byte *pbVar17;\n  undefined4 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  int *piVar21;\n  undefined4 *puVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  int *piVar25;\n  uint uVar26;\n  int iVar27;\n  int *piVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined8 uVar31;\n  byte *local_1ec;\n  undefined4 local_1e8;\n  undefined4 local_1e4;\n  int local_1e0;\n  undefined4 local_1dc [2];\n  undefined4 local_1d4;\n  undefined4 local_1d0;\n  undefined4 local_1cc;\n  undefined4 local_1b4;\n  undefined1 auStack_1a8 [72];\n  undefined4 local_160;\n  undefined4 local_104;\n  undefined4 local_100;\n  undefined4 local_fc;\n  undefined4 *local_f8;\n  undefined4 local_f4;\n  undefined2 local_f0;\n  undefined1 local_ee;\n  byte *local_c4;\n  undefined4 uStack_c0;\n  int local_74;\n  int *local_70;\n  uint local_68;\n  int local_60;\n  undefined4 local_5c;\n  undefined1 auStack_3c [4];\n  byte *local_38;\n  int local_34;\n  undefined1 local_30;\n  undefined1 local_2f;\n  undefined4 local_2c;\n  \n  local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;\n  uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);\n  if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }\n  if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }\n  if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }\nLAB_000b204c:\n  uVar4 = 0;\n  piVar21 = (int *)0x0;\n  local_74 = *(int *)PTR_optind_0012b0ec;\n  puVar5 = PTR_FUN_0012a1a8 + -0x6a44;\n  puVar6 = PTR_FUN_0012a1a8 + -0x1308;\n  piVar23 = (int *)PTR_FUN_0012a1a8;\n  do {\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  } while( true );\n}" { (declaration "undefined1 uVar1;" type_identifier identifier ;) (declaration "bool bVar2;" primitive_type identifier ;) (declaration "undefined *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined1 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "int iVar12;" primitive_type identifier ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "uint uVar14;" type_identifier identifier ;) (declaration "undefined1 *puVar15;" type_identifier (pointer_declarator "*puVar15" * identifier) ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "byte *pbVar17;" type_identifier (pointer_declarator "*pbVar17" * identifier) ;) (declaration "undefined4 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "byte *pbVar19;" type_identifier (pointer_declarator "*pbVar19" * identifier) ;) (declaration "byte *pbVar20;" type_identifier (pointer_declarator "*pbVar20" * identifier) ;) (declaration "int *piVar21;" primitive_type (pointer_declarator "*piVar21" * identifier) ;) (declaration "undefined4 *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "int *piVar23;" primitive_type (pointer_declarator "*piVar23" * identifier) ;) (declaration "undefined4 *puVar24;" type_identifier (pointer_declarator "*puVar24" * identifier) ;) (declaration "int *piVar25;" primitive_type (pointer_declarator "*piVar25" * identifier) ;) (declaration "uint uVar26;" type_identifier identifier ;) (declaration "int iVar27;" primitive_type identifier ;) (declaration "int *piVar28;" primitive_type (pointer_declarator "*piVar28" * identifier) ;) (declaration "int iVar29;" primitive_type identifier ;) (declaration "code *pcVar30;" type_identifier (pointer_declarator "*pcVar30" * identifier) ;) (declaration "undefined8 uVar31;" type_identifier identifier ;) (declaration "byte *local_1ec;" type_identifier (pointer_declarator "*local_1ec" * identifier) ;) (declaration "undefined4 local_1e8;" type_identifier identifier ;) (declaration "undefined4 local_1e4;" type_identifier identifier ;) (declaration "int local_1e0;" primitive_type identifier ;) (declaration "undefined4 local_1dc [2];" type_identifier (array_declarator "local_1dc [2]" identifier [ number_literal ]) ;) (declaration "undefined4 local_1d4;" type_identifier identifier ;) (declaration "undefined4 local_1d0;" type_identifier identifier ;) (declaration "undefined4 local_1cc;" type_identifier identifier ;) (declaration "undefined4 local_1b4;" type_identifier identifier ;) (declaration "undefined1 auStack_1a8 [72];" type_identifier (array_declarator "auStack_1a8 [72]" identifier [ number_literal ]) ;) (declaration "undefined4 local_160;" type_identifier identifier ;) (declaration "undefined4 local_104;" type_identifier identifier ;) (declaration "undefined4 local_100;" type_identifier identifier ;) (declaration "undefined4 local_fc;" type_identifier identifier ;) (declaration "undefined4 *local_f8;" type_identifier (pointer_declarator "*local_f8" * identifier) ;) (declaration "undefined4 local_f4;" type_identifier identifier ;) (declaration "undefined2 local_f0;" type_identifier identifier ;) (declaration "undefined1 local_ee;" type_identifier identifier ;) (declaration "byte *local_c4;" type_identifier (pointer_declarator "*local_c4" * identifier) ;) (declaration "undefined4 uStack_c0;" type_identifier identifier ;) (declaration "int local_74;" primitive_type identifier ;) (declaration "int *local_70;" primitive_type (pointer_declarator "*local_70" * identifier) ;) (declaration "uint local_68;" type_identifier identifier ;) (declaration "int local_60;" primitive_type identifier ;) (declaration "undefined4 local_5c;" type_identifier identifier ;) (declaration "undefined1 auStack_3c [4];" type_identifier (array_declarator "auStack_3c [4]" identifier [ number_literal ]) ;) (declaration "byte *local_38;" type_identifier (pointer_declarator "*local_38" * identifier) ;) (declaration "int local_34;" primitive_type identifier ;) (declaration "undefined1 local_30;" type_identifier identifier ;) (declaration "undefined1 local_2f;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (expression_statement "local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;" (assignment_expression "local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c" identifier = (pointer_expression "*(undefined4 *)PTR___stack_chk_guard_0012b14c" * (cast_expression "(undefined4 *)PTR___stack_chk_guard_0012b14c" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c)" identifier = (call_expression "(*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a30c)" ( (pointer_expression "*(code *)PTR_FUN_0012a30c" * (cast_expression "(code *)PTR_FUN_0012a30c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c)" ( identifier , (binary_expression "PTR_UINT_0012a18c + -0x1760" identifier + number_literal) , identifier , identifier )))) ;) (if_statement "if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }" if (parenthesized_expression "((uVar4 & 7) == 0)" ( (binary_expression "(uVar4 & 7) == 0" (parenthesized_expression "(uVar4 & 7)" ( (binary_expression "uVar4 & 7" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }" { (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c)" identifier = (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4f3c)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4f3c" identifier + number_literal) )))) ;) })) (if_statement "if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }" if (parenthesized_expression "((uVar4 & 8) != 0)" ( (binary_expression "(uVar4 & 8) != 0" (parenthesized_expression "(uVar4 & 8)" ( (binary_expression "uVar4 & 8" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }" { (expression_statement "puVar22 = (undefined4 *)(uint)*local_38;" (assignment_expression "puVar22 = (undefined4 *)(uint)*local_38" identifier = (binary_expression "(undefined4 *)(uint)*local_38" (cast_expression "(undefined4 *)(uint)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uint)" ( identifier ))) * identifier)) ;) (if_statement "if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;" if (parenthesized_expression "(puVar22 == (undefined4 *)0x0)" ( (binary_expression "puVar22 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b2650;" goto statement_identifier ;)) (if_statement "if (local_38[1] == 0) goto LAB_000b2678;" if (parenthesized_expression "(local_38[1] == 0)" ( (binary_expression "local_38[1] == 0" (subscript_expression "local_38[1]" identifier [ number_literal ]) == number_literal) )) (goto_statement "goto LAB_000b2678;" goto statement_identifier ;)) (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c)" identifier = (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4f0c)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4f0c" identifier + number_literal) )))) ;) })) (if_statement "if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }" if (parenthesized_expression "((uVar4 & 4) == 0)" ( (binary_expression "(uVar4 & 4) == 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }" { (expression_statement "puVar22 = (undefined4 *)0x9;" (assignment_expression "puVar22 = (undefined4 *)0x9" identifier = (cast_expression "(undefined4 *)0x9" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }" if (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }" { (do_statement "do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);" do (compound_statement "{\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      }" { (do_statement "do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);" do (compound_statement "{\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        }" { (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f)" identifier = (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4ee0" identifier + number_literal) , (binary_expression "PTR_FUN_0012a1a8 + 0x727f" identifier + number_literal) )))) ;) (labeled_statement "LAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;" statement_identifier : (if_statement "if ((uVar4 & 4) != 0) goto LAB_000b204c;" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000b204c;" goto statement_identifier ;))) }) while (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) ;) (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f)" identifier = (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4eb0" identifier + number_literal) , (binary_expression "PTR_FUN_0012a1a8 + 0x727f" identifier + number_literal) )))) ;) (labeled_statement "LAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;" statement_identifier : (if_statement "if ((uVar4 & 4) != 0) goto LAB_000b204c;" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000b204c;" goto statement_identifier ;))) }) while (parenthesized_expression "((uVar4 & 0x10) != 0)" ( (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" ( (binary_expression "uVar4 & 0x10" identifier & number_literal) )) != number_literal) )) ;) (if_statement "if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }" if (parenthesized_expression "(puVar22 != (undefined4 *)0x9)" ( (binary_expression "puVar22 != (undefined4 *)0x9" identifier != (cast_expression "(undefined4 *)0x9" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }" { (expression_statement "puVar6 = PTR_FUN_0012a1a8 + 0x727f;" (assignment_expression "puVar6 = PTR_FUN_0012a1a8 + 0x727f" identifier = (binary_expression "PTR_FUN_0012a1a8 + 0x727f" identifier + number_literal)) ;) (expression_statement "puVar5 = PTR_FUN_0012a1e4;" (assignment_expression "puVar5 = PTR_FUN_0012a1e4" identifier = identifier) ;) (expression_statement "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);" (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4eb0)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4eb0" identifier + number_literal) ))) ;) (expression_statement "puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);" (assignment_expression "puVar24 = *(undefined4 **)(puVar5 + 0x78aa4)" identifier = (pointer_expression "*(undefined4 **)(puVar5 + 0x78aa4)" * (cast_expression "(undefined4 **)(puVar5 + 0x78aa4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78aa4)" ( (binary_expression "puVar5 + 0x78aa4" identifier + number_literal) ))))) ;) (expression_statement "local_c4 = (byte *)*puVar24;" (assignment_expression "local_c4 = (byte *)*puVar24" identifier = (cast_expression "(byte *)*puVar24" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar24" * identifier))) ;) (expression_statement "local_1e0 = 0;" (assignment_expression "local_1e0 = 0" identifier = number_literal) ;) (expression_statement "uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);" (assignment_expression "uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8)" identifier = (call_expression "(**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8)" (parenthesized_expression "(**(code **)(puVar5 + 0x77c40))" ( (pointer_expression "**(code **)(puVar5 + 0x77c40)" * (pointer_expression "*(code **)(puVar5 + 0x77c40)" * (cast_expression "(code **)(puVar5 + 0x77c40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77c40)" ( (binary_expression "puVar5 + 0x77c40" identifier + number_literal) ))))) )) (argument_list "(puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8)" ( identifier , (binary_expression "*(int *)(puVar5 + 0x77ae4) + -0x1730" (pointer_expression "*(int *)(puVar5 + 0x77ae4)" * (cast_expression "(int *)(puVar5 + 0x77ae4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77ae4)" ( (binary_expression "puVar5 + 0x77ae4" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar5 + 0x77b00) + 0x72ba" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) , (pointer_expression "&local_1ec" & identifier) , (pointer_expression "&local_1ec" & identifier) , (pointer_expression "&local_1e4" & identifier) , (pointer_expression "&local_1e0" & identifier) , (pointer_expression "&local_1e8" & identifier) )))) ;) (expression_statement "iVar12 = **(int **)(puVar5 + 0x78a44);" (assignment_expression "iVar12 = **(int **)(puVar5 + 0x78a44)" identifier = (pointer_expression "**(int **)(puVar5 + 0x78a44)" * (pointer_expression "*(int **)(puVar5 + 0x78a44)" * (cast_expression "(int **)(puVar5 + 0x78a44)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78a44)" ( (binary_expression "puVar5 + 0x78a44" identifier + number_literal) )))))) ;) (if_statement "if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }" { (expression_statement "(**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);" (call_expression "(**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48)" (parenthesized_expression "(**(code **)(puVar5 + 0x78734))" ( (pointer_expression "**(code **)(puVar5 + 0x78734)" * (pointer_expression "*(code **)(puVar5 + 0x78734)" * (cast_expression "(code **)(puVar5 + 0x78734)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78734)" ( (binary_expression "puVar5 + 0x78734" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar5 + 0x77b00) + -0x4e48)" ( (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e48" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) ))) ;) })) (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" identifier = number_literal) ;) (if_statement "if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }" if (parenthesized_expression "((uVar4 & 0x20) != 0)" ( (binary_expression "(uVar4 & 0x20) != 0" (parenthesized_expression "(uVar4 & 0x20)" ( (binary_expression "uVar4 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }" { (if_statement "if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }" if (parenthesized_expression "(local_1e0 != 0)" ( (binary_expression "local_1e0 != 0" identifier != number_literal) )) (compound_statement "{\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }" { (expression_statement "iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);" (assignment_expression "iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e)" identifier = (call_expression "(**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e)" (parenthesized_expression "(**(code **)(puVar5 + 0x77e64))" ( (pointer_expression "**(code **)(puVar5 + 0x77e64)" * (pointer_expression "*(code **)(puVar5 + 0x77e64)" * (cast_expression "(code **)(puVar5 + 0x77e64)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77e64)" ( (binary_expression "puVar5 + 0x77e64" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar5 + 0x77b00) + 0x729e)" ( (binary_expression "*(int *)(puVar5 + 0x77b00) + 0x729e" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (-1 < iVar8) goto LAB_000b276c;" if (parenthesized_expression "(-1 < iVar8)" ( (binary_expression "-1 < iVar8" number_literal < identifier) )) (goto_statement "goto LAB_000b276c;" goto statement_identifier ;)) (expression_statement "(**(code **)(puVar5 + 0x77b34))();" (call_expression "(**(code **)(puVar5 + 0x77b34))()" (parenthesized_expression "(**(code **)(puVar5 + 0x77b34))" ( (pointer_expression "**(code **)(puVar5 + 0x77b34)" * (pointer_expression "*(code **)(puVar5 + 0x77b34)" * (cast_expression "(code **)(puVar5 + 0x77b34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b34)" ( (binary_expression "puVar5 + 0x77b34" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) })) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" identifier = number_literal) ;) })) (labeled_statement "LAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);" statement_identifier : (expression_statement "puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);" (assignment_expression "puVar18 = (undefined4 *)(puVar6 + iVar12 * 4)" identifier = (cast_expression "(undefined4 *)(puVar6 + iVar12 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + iVar12 * 4)" ( (binary_expression "puVar6 + iVar12 * 4" identifier + (binary_expression "iVar12 * 4" identifier * number_literal)) )))) ;)) (expression_statement "pbVar19 = (byte *)*puVar18;" (assignment_expression "pbVar19 = (byte *)*puVar18" identifier = (cast_expression "(byte *)*puVar18" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar18" * identifier))) ;) (expression_statement "uVar13 = uVar4 & 10;" (assignment_expression "uVar13 = uVar4 & 10" identifier = (binary_expression "uVar4 & 10" identifier & number_literal)) ;) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;) (if_statement "if (pbVar19 == (byte *)0x0) goto LAB_000b2834;" if (parenthesized_expression "(pbVar19 == (byte *)0x0)" ( (binary_expression "pbVar19 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b2834;" goto statement_identifier ;)) (expression_statement "pbVar17 = (byte *)(uint)*pbVar19;" (assignment_expression "pbVar17 = (byte *)(uint)*pbVar19" identifier = (binary_expression "(byte *)(uint)*pbVar19" (cast_expression "(byte *)(uint)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(uint)" ( identifier ))) * identifier)) ;) (if_statement "if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;" if (parenthesized_expression "(pbVar17 != &DAT_0000002b)" ( (binary_expression "pbVar17 != &DAT_0000002b" identifier != (pointer_expression "&DAT_0000002b" & identifier)) )) (goto_statement "goto LAB_000b2a78;" goto statement_identifier ;)) (expression_statement "pbVar20 = pbVar19 + 1;" (assignment_expression "pbVar20 = pbVar19 + 1" identifier = (binary_expression "pbVar19 + 1" identifier + number_literal)) ;) (expression_statement "pbVar19 = (byte *)puVar18[1];" (assignment_expression "pbVar19 = (byte *)puVar18[1]" identifier = (cast_expression "(byte *)puVar18[1]" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar18[1]" identifier [ number_literal ]))) ;) (expression_statement "puVar18 = puVar18 + 1;" (assignment_expression "puVar18 = puVar18 + 1" identifier = (binary_expression "puVar18 + 1" identifier + number_literal)) ;) (if_statement "if (uVar13 != 0) goto LAB_000b2b34;" if (parenthesized_expression "(uVar13 != 0)" ( (binary_expression "uVar13 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b2b34;" goto statement_identifier ;)) (expression_statement "uVar26 = uVar4 | 2;" (assignment_expression "uVar26 = uVar4 | 2" identifier = (binary_expression "uVar4 | 2" identifier | number_literal)) ;) (if_statement "if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;" if (parenthesized_expression "(pbVar19 != (byte *)0x0)" ( (binary_expression "pbVar19 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b2a90;" goto statement_identifier ;)) (expression_statement "uVar14 = uVar4 & 0x10;" (assignment_expression "uVar14 = uVar4 & 0x10" identifier = (binary_expression "uVar4 & 0x10" identifier & number_literal)) ;) (expression_statement "local_1ec = pbVar19;" (assignment_expression "local_1ec = pbVar19" identifier = identifier) ;) (labeled_statement "LAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);" statement_identifier : (expression_statement "pcVar30 = *(code **)(puVar5 + 0x78a84);" (assignment_expression "pcVar30 = *(code **)(puVar5 + 0x78a84)" identifier = (pointer_expression "*(code **)(puVar5 + 0x78a84)" * (cast_expression "(code **)(puVar5 + 0x78a84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78a84)" ( (binary_expression "puVar5 + 0x78a84" identifier + number_literal) ))))) ;)) (expression_statement "uVar4 = uVar26;" (assignment_expression "uVar4 = uVar26" identifier = identifier) ;) (if_statement "if (uVar14 == 0) goto LAB_000b2850;" if (parenthesized_expression "(uVar14 == 0)" ( (binary_expression "uVar14 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000b2850;" goto statement_identifier ;)) (labeled_statement "LAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);" statement_identifier : (expression_statement "(**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);" (call_expression "(**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8)" (parenthesized_expression "(**(code **)(puVar5 + 0x782a8))" ( (pointer_expression "**(code **)(puVar5 + 0x782a8)" * (pointer_expression "*(code **)(puVar5 + 0x782a8)" * (cast_expression "(code **)(puVar5 + 0x782a8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x782a8)" ( (binary_expression "puVar5 + 0x782a8" identifier + number_literal) ))))) )) (argument_list "(local_1e4,auStack_1a8)" ( identifier , identifier ))) ;)) (expression_statement "local_1dc[0] = local_160;" (assignment_expression "local_1dc[0] = local_160" (subscript_expression "local_1dc[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pbVar19 = pbVar20;" (assignment_expression "pbVar19 = pbVar20" identifier = identifier) ;) (do_statement "do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );" do (compound_statement "{\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        }" { (expression_statement "puVar22 = local_1dc;" (assignment_expression "puVar22 = local_1dc" identifier = identifier) ;) (expression_statement "puVar18 = &local_1d4;" (assignment_expression "puVar18 = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "(**(code **)(puVar5 + 0x789dc))(puVar22);" (call_expression "(**(code **)(puVar5 + 0x789dc))(puVar22)" (parenthesized_expression "(**(code **)(puVar5 + 0x789dc))" ( (pointer_expression "**(code **)(puVar5 + 0x789dc)" * (pointer_expression "*(code **)(puVar5 + 0x789dc)" * (cast_expression "(code **)(puVar5 + 0x789dc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x789dc)" ( (binary_expression "puVar5 + 0x789dc" identifier + number_literal) ))))) )) (argument_list "(puVar22)" ( identifier ))) ;) (if_statement "if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }" if (parenthesized_expression "(local_1ec == (byte *)0x0)" ( (binary_expression "local_1ec == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }" { (labeled_statement "LAB_000b28d0:\n            uVar26 = uVar4;" statement_identifier : (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;)) (if_statement "if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" if (parenthesized_expression "(pbVar19 == (byte *)0x0)" ( (binary_expression "pbVar19 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }" { (expression_statement "iVar12 = *(int *)(puVar5 + 0x77b00);" (assignment_expression "iVar12 = *(int *)(puVar5 + 0x77b00)" identifier = (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) ))))) ;) (if_statement "if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }" if (parenthesized_expression "(iVar8 != -1)" ( (binary_expression "iVar8 != -1" identifier != number_literal) )) (compound_statement "{\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }" { (expression_statement "iVar9 = iVar8 * 3;" (assignment_expression "iVar9 = iVar8 * 3" identifier = (binary_expression "iVar8 * 3" identifier * number_literal)) ;) (expression_statement "iVar10 = iVar9 + 8;" (assignment_expression "iVar10 = iVar9 + 8" identifier = (binary_expression "iVar9 + 8" identifier + number_literal)) ;) (expression_statement "puVar18 = *(undefined4 **)(iVar12 + -0x4e18);" (assignment_expression "puVar18 = *(undefined4 **)(iVar12 + -0x4e18)" identifier = (pointer_expression "*(undefined4 **)(iVar12 + -0x4e18)" * (cast_expression "(undefined4 **)(iVar12 + -0x4e18)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar12 + -0x4e18)" ( (binary_expression "iVar12 + -0x4e18" identifier + number_literal) ))))) ;) (expression_statement "local_104 = *(undefined4 *)(iVar12 + -0x4e24);" (assignment_expression "local_104 = *(undefined4 *)(iVar12 + -0x4e24)" identifier = (pointer_expression "*(undefined4 *)(iVar12 + -0x4e24)" * (cast_expression "(undefined4 *)(iVar12 + -0x4e24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -0x4e24)" ( (binary_expression "iVar12 + -0x4e24" identifier + number_literal) ))))) ;) (expression_statement "local_100 = *(undefined4 *)(iVar12 + -20000);" (assignment_expression "local_100 = *(undefined4 *)(iVar12 + -20000)" identifier = (pointer_expression "*(undefined4 *)(iVar12 + -20000)" * (cast_expression "(undefined4 *)(iVar12 + -20000)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -20000)" ( (binary_expression "iVar12 + -20000" identifier + number_literal) ))))) ;) (expression_statement "local_fc = *(undefined4 *)(iVar12 + -0x4e1c);" (assignment_expression "local_fc = *(undefined4 *)(iVar12 + -0x4e1c)" identifier = (pointer_expression "*(undefined4 *)(iVar12 + -0x4e1c)" * (cast_expression "(undefined4 *)(iVar12 + -0x4e1c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -0x4e1c)" ( (binary_expression "iVar12 + -0x4e1c" identifier + number_literal) ))))) ;) (expression_statement "local_f8 = puVar18;" (assignment_expression "local_f8 = puVar18" identifier = identifier) ;) (expression_statement "local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);" (assignment_expression "local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_)" identifier = (call_expression "CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_)" identifier (argument_list "(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_)" ( (pointer_expression "*(undefined2 *)(iVar12 + -0x4e14)" * (cast_expression "(undefined2 *)(iVar12 + -0x4e14)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -0x4e14)" ( (binary_expression "iVar12 + -0x4e14" identifier + number_literal) )))) , (field_expression "local_f4._2_2_" identifier . field_identifier) )))) ;) (expression_statement "iVar12 = iVar10;" (assignment_expression "iVar12 = iVar10" identifier = identifier) ;) (if_statement "if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }" { (expression_statement "iVar16 = iVar9 + 9;" (assignment_expression "iVar16 = iVar9 + 9" identifier = (binary_expression "iVar9 + 9" identifier + number_literal)) ;) (expression_statement "iVar12 = iVar9 + 10;" (assignment_expression "iVar12 = iVar9 + 10" identifier = (binary_expression "iVar9 + 10" identifier + number_literal)) ;) (goto_statement "goto LAB_000b2988;" goto statement_identifier ;) })) (labeled_statement "LAB_000b29b4:\n                pbVar19 = (byte *)&local_104;" statement_identifier : (expression_statement "pbVar19 = (byte *)&local_104;" (assignment_expression "pbVar19 = (byte *)&local_104" identifier = (cast_expression "(byte *)&local_104" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_104" & identifier))) ;)) (expression_statement "*(undefined1 *)((int)&local_104 + iVar12) = 0;" (assignment_expression "*(undefined1 *)((int)&local_104 + iVar12) = 0" (pointer_expression "*(undefined1 *)((int)&local_104 + iVar12)" * (cast_expression "(undefined1 *)((int)&local_104 + iVar12)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_104 + iVar12)" ( (binary_expression "(int)&local_104 + iVar12" (cast_expression "(int)&local_104" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_104" & identifier)) + identifier) )))) = number_literal) ;) (goto_statement "goto LAB_000b29c0;" goto statement_identifier ;) })) (expression_statement "iVar9 = *(int *)(puVar5 + 0x77b00);" (assignment_expression "iVar9 = *(int *)(puVar5 + 0x77b00)" identifier = (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) ))))) ;) (if_statement "if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }" if (parenthesized_expression "((uVar4 & 1) != 0)" ( (binary_expression "(uVar4 & 1) != 0" (parenthesized_expression "(uVar4 & 1)" ( (binary_expression "uVar4 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }" { (expression_statement "iVar12 = 0x18;" (assignment_expression "iVar12 = 0x18" identifier = number_literal) ;) (expression_statement "iVar16 = 0x17;" (assignment_expression "iVar16 = 0x17" identifier = number_literal) ;) (expression_statement "iVar10 = 0x16;" (assignment_expression "iVar10 = 0x16" identifier = number_literal) ;) (expression_statement "local_104 = *(undefined4 *)(iVar9 + -0x4e10);" (assignment_expression "local_104 = *(undefined4 *)(iVar9 + -0x4e10)" identifier = (pointer_expression "*(undefined4 *)(iVar9 + -0x4e10)" * (cast_expression "(undefined4 *)(iVar9 + -0x4e10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4e10)" ( (binary_expression "iVar9 + -0x4e10" identifier + number_literal) ))))) ;) (expression_statement "local_100 = *(undefined4 *)(iVar9 + -0x4e0c);" (assignment_expression "local_100 = *(undefined4 *)(iVar9 + -0x4e0c)" identifier = (pointer_expression "*(undefined4 *)(iVar9 + -0x4e0c)" * (cast_expression "(undefined4 *)(iVar9 + -0x4e0c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4e0c)" ( (binary_expression "iVar9 + -0x4e0c" identifier + number_literal) ))))) ;) (expression_statement "local_fc = *(undefined4 *)(iVar9 + -0x4e08);" (assignment_expression "local_fc = *(undefined4 *)(iVar9 + -0x4e08)" identifier = (pointer_expression "*(undefined4 *)(iVar9 + -0x4e08)" * (cast_expression "(undefined4 *)(iVar9 + -0x4e08)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4e08)" ( (binary_expression "iVar9 + -0x4e08" identifier + number_literal) ))))) ;) (expression_statement "local_f8 = *(undefined4 **)(iVar9 + -0x4e04);" (assignment_expression "local_f8 = *(undefined4 **)(iVar9 + -0x4e04)" identifier = (pointer_expression "*(undefined4 **)(iVar9 + -0x4e04)" * (cast_expression "(undefined4 **)(iVar9 + -0x4e04)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + -0x4e04)" ( (binary_expression "iVar9 + -0x4e04" identifier + number_literal) ))))) ;) (expression_statement "local_f4 = *(undefined4 *)(iVar9 + -0x4e00);" (assignment_expression "local_f4 = *(undefined4 *)(iVar9 + -0x4e00)" identifier = (pointer_expression "*(undefined4 *)(iVar9 + -0x4e00)" * (cast_expression "(undefined4 *)(iVar9 + -0x4e00)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4e00)" ( (binary_expression "iVar9 + -0x4e00" identifier + number_literal) ))))) ;) (expression_statement "local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);" (assignment_expression "local_f0 = *(undefined2 *)(iVar9 + -0x4dfc)" identifier = (pointer_expression "*(undefined2 *)(iVar9 + -0x4dfc)" * (cast_expression "(undefined2 *)(iVar9 + -0x4dfc)" ( (type_descriptor "undefined2 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4dfc)" ( (binary_expression "iVar9 + -0x4dfc" identifier + number_literal) ))))) ;) (expression_statement "local_ee = *(undefined1 *)(iVar9 + -0x4dfa);" (assignment_expression "local_ee = *(undefined1 *)(iVar9 + -0x4dfa)" identifier = (pointer_expression "*(undefined1 *)(iVar9 + -0x4dfa)" * (cast_expression "(undefined1 *)(iVar9 + -0x4dfa)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -0x4dfa)" ( (binary_expression "iVar9 + -0x4dfa" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000b2988:\n                uVar26 = 0x7a;" statement_identifier : (expression_statement "uVar26 = 0x7a;" (assignment_expression "uVar26 = 0x7a" identifier = number_literal) ;)) (if_statement "if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }" if (parenthesized_expression "((uVar4 & 4) != 0)" ( (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" ( (binary_expression "uVar4 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n                  uVar26 = 0x5a;\n                }" { (expression_statement "uVar26 = 0x5a;" (assignment_expression "uVar26 = 0x5a" identifier = number_literal) ;) })) (expression_statement "puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);" (assignment_expression "puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16)" identifier = (cast_expression "(undefined4 *)((int)&uStack_c0 + iVar16)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&uStack_c0 + iVar16)" ( (binary_expression "(int)&uStack_c0 + iVar16" (cast_expression "(int)&uStack_c0" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&uStack_c0" & identifier)) + identifier) )))) ;) (expression_statement "*(undefined1 *)((int)&local_104 + iVar10) = 0x25;" (assignment_expression "*(undefined1 *)((int)&local_104 + iVar10) = 0x25" (pointer_expression "*(undefined1 *)((int)&local_104 + iVar10)" * (cast_expression "(undefined1 *)((int)&local_104 + iVar10)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_104 + iVar10)" ( (binary_expression "(int)&local_104 + iVar10" (cast_expression "(int)&local_104" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_104" & identifier)) + identifier) )))) = number_literal) ;) (expression_statement "*(char *)((int)&local_104 + iVar16) = (char)uVar26;" (assignment_expression "*(char *)((int)&local_104 + iVar16) = (char)uVar26" (pointer_expression "*(char *)((int)&local_104 + iVar16)" * (cast_expression "(char *)((int)&local_104 + iVar16)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&local_104 + iVar16)" ( (binary_expression "(int)&local_104 + iVar16" (cast_expression "(int)&local_104" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&local_104" & identifier)) + identifier) )))) = (cast_expression "(char)uVar26" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (goto_statement "goto LAB_000b29b4;" goto statement_identifier ;) })) (expression_statement "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);" (assignment_expression "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74)" identifier = (cast_expression "(byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x77b00) + -0x4e74)" ( (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e74" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" else (compound_statement "{\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" { (labeled_statement "LAB_000b29c0:\n              uVar4 = uVar26;" statement_identifier : (expression_statement "uVar4 = uVar26;" (assignment_expression "uVar4 = uVar26" identifier = identifier) ;)) (if_statement "if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }" if (parenthesized_expression "(*pbVar19 == 0)" ( (binary_expression "*pbVar19 == 0" (pointer_expression "*pbVar19" * identifier) == number_literal) )) (compound_statement "{\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }" { (expression_statement "**(undefined1 **)(puVar5 + 0x77c9c) = 0;" (assignment_expression "**(undefined1 **)(puVar5 + 0x77c9c) = 0" (pointer_expression "**(undefined1 **)(puVar5 + 0x77c9c)" * (pointer_expression "*(undefined1 **)(puVar5 + 0x77c9c)" * (cast_expression "(undefined1 **)(puVar5 + 0x77c9c)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77c9c)" ( (binary_expression "puVar5 + 0x77c9c" identifier + number_literal) ))))) = number_literal) ;) (goto_statement "goto LAB_000b29d0;" goto statement_identifier ;) })) }))) (expression_statement "iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8)" identifier = (call_expression "(**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b48))" ( (pointer_expression "**(code **)(puVar5 + 0x77b48)" * (pointer_expression "*(code **)(puVar5 + 0x77b48)" * (cast_expression "(code **)(puVar5 + 0x77b48)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b48)" ( (binary_expression "puVar5 + 0x77b48" identifier + number_literal) ))))) )) (argument_list "(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8)" ( identifier , (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4df8" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }" { (expression_statement "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);" (assignment_expression "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c)" identifier = (cast_expression "(byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x77b00) + -0x4e5c)" ( (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e5c" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) })) (expression_statement "puVar18 = (undefined4 *)0x400;" (assignment_expression "puVar18 = (undefined4 *)0x400" identifier = (cast_expression "(undefined4 *)0x400" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);" (call_expression "(**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4)" (parenthesized_expression "(**(code **)(puVar5 + 0x788cc))" ( (pointer_expression "**(code **)(puVar5 + 0x788cc)" * (pointer_expression "*(code **)(puVar5 + 0x788cc)" * (cast_expression "(code **)(puVar5 + 0x788cc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x788cc)" ( (binary_expression "puVar5 + 0x788cc" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4)" ( (pointer_expression "*(undefined4 *)(puVar5 + 0x77c9c)" * (cast_expression "(undefined4 *)(puVar5 + 0x77c9c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77c9c)" ( (binary_expression "puVar5 + 0x77c9c" identifier + number_literal) )))) , number_literal , identifier , (pointer_expression "&local_1d4" & identifier) ))) ;) (labeled_statement "LAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));" statement_identifier : (expression_statement "(**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));" (call_expression "(**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c))" (parenthesized_expression "(**(code **)(puVar5 + 0x7890c))" ( (pointer_expression "**(code **)(puVar5 + 0x7890c)" * (pointer_expression "*(code **)(puVar5 + 0x7890c)" * (cast_expression "(code **)(puVar5 + 0x7890c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x7890c)" ( (binary_expression "puVar5 + 0x7890c" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar5 + 0x77c9c))" ( (pointer_expression "*(undefined4 *)(puVar5 + 0x77c9c)" * (cast_expression "(undefined4 *)(puVar5 + 0x77c9c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77c9c)" ( (binary_expression "puVar5 + 0x77c9c" identifier + number_literal) )))) ))) ;)) (if_statement "if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }" if (parenthesized_expression "(local_c4 == (byte *)*puVar24)" ( (binary_expression "local_c4 == (byte *)*puVar24" identifier == (cast_expression "(byte *)*puVar24" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar24" * identifier))) )) (compound_statement "{\n              return 0;\n            }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "pbVar17 = local_c4;" (assignment_expression "pbVar17 = local_c4" identifier = identifier) ;) (expression_statement "uVar13 = (**(code **)(puVar5 + 0x78a20))();" (assignment_expression "uVar13 = (**(code **)(puVar5 + 0x78a20))()" identifier = (call_expression "(**(code **)(puVar5 + 0x78a20))()" (parenthesized_expression "(**(code **)(puVar5 + 0x78a20))" ( (pointer_expression "**(code **)(puVar5 + 0x78a20)" * (pointer_expression "*(code **)(puVar5 + 0x78a20)" * (cast_expression "(code **)(puVar5 + 0x78a20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78a20)" ( (binary_expression "puVar5 + 0x78a20" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (labeled_statement "LAB_000b2a78:\n            pbVar20 = pbVar19;" statement_identifier : (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;)) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;) (if_statement "if (uVar13 != 0) goto LAB_000b2b3c;" if (parenthesized_expression "(uVar13 != 0)" ( (binary_expression "uVar13 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b2b3c;" goto statement_identifier ;)) (expression_statement "pbVar20 = (byte *)0x0;" (assignment_expression "pbVar20 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar26 = uVar4 | 2;" (assignment_expression "uVar26 = uVar4 | 2" identifier = (binary_expression "uVar4 | 2" identifier | number_literal)) ;) (labeled_statement "LAB_000b2a90:\n            local_1ec = pbVar19;" statement_identifier : (expression_statement "local_1ec = pbVar19;" (assignment_expression "local_1ec = pbVar19" identifier = identifier) ;)) (expression_statement "iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40)" identifier = (call_expression "(**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40)" (parenthesized_expression "(**(code **)(puVar5 + 0x785d0))" ( (pointer_expression "**(code **)(puVar5 + 0x785d0)" * (pointer_expression "*(code **)(puVar5 + 0x785d0)" * (cast_expression "(code **)(puVar5 + 0x785d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x785d0)" ( (binary_expression "puVar5 + 0x785d0" identifier + number_literal) ))))) )) (argument_list "(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40)" ( identifier , (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e40" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pbVar17 = pbVar19 + iVar12;" (assignment_expression "pbVar17 = pbVar19 + iVar12" identifier = (binary_expression "pbVar19 + iVar12" identifier + identifier)) ;) (expression_statement "uVar31 = CONCAT44(iVar12,(uint)*pbVar17);" (assignment_expression "uVar31 = CONCAT44(iVar12,(uint)*pbVar17)" identifier = (call_expression "CONCAT44(iVar12,(uint)*pbVar17)" identifier (argument_list "(iVar12,(uint)*pbVar17)" ( identifier , (binary_expression "(uint)*pbVar17" (parenthesized_expression "(uint)" ( identifier )) * identifier) )))) ;) (expression_statement "puVar22 = puVar18;" (assignment_expression "puVar22 = puVar18" identifier = identifier) ;) (if_statement "if (*pbVar17 != 0) goto LAB_000b2b48;" if (parenthesized_expression "(*pbVar17 != 0)" ( (binary_expression "*pbVar17 != 0" (pointer_expression "*pbVar17" * identifier) != number_literal) )) (goto_statement "goto LAB_000b2b48;" goto statement_identifier ;)) (expression_statement "uVar13 = iVar12 - 8;" (assignment_expression "uVar13 = iVar12 - 8" identifier = (binary_expression "iVar12 - 8" identifier - number_literal)) ;) (expression_statement "uVar4 = uVar13 & 1;" (assignment_expression "uVar4 = uVar13 & 1" identifier = (binary_expression "uVar13 & 1" identifier & number_literal)) ;) (if_statement "if (uVar13 < 5) goto LAB_000b2ad4;" if (parenthesized_expression "(uVar13 < 5)" ( (binary_expression "uVar13 < 5" identifier < number_literal) )) (goto_statement "goto LAB_000b2ad4;" goto statement_identifier ;)) (labeled_statement "LAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);" statement_identifier : (expression_statement "pbVar17 = *(byte **)(puVar5 + 0x77c24);" (assignment_expression "pbVar17 = *(byte **)(puVar5 + 0x77c24)" identifier = (pointer_expression "*(byte **)(puVar5 + 0x77c24)" * (cast_expression "(byte **)(puVar5 + 0x77c24)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77c24)" ( (binary_expression "puVar5 + 0x77c24" identifier + number_literal) ))))) ;)) (do_statement "do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );" do (compound_statement "{\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            }" { (expression_statement "uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);" (assignment_expression "uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19)" identifier = (call_expression "(**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b3c))" ( (pointer_expression "**(code **)(puVar5 + 0x77b3c)" * (pointer_expression "*(code **)(puVar5 + 0x77b3c)" * (cast_expression "(code **)(puVar5 + 0x77b3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b3c)" ( (binary_expression "puVar5 + 0x77b3c" identifier + number_literal) ))))) )) (argument_list "(pbVar17,pbVar19)" ( identifier , identifier )))) ;) (labeled_statement "LAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }" statement_identifier : (while_statement "while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }" while (parenthesized_expression "(pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0)" ( (comma_expression "pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0" (assignment_expression "pbVar17 = *(byte **)(puVar5 + 0x77c24)" identifier = (pointer_expression "*(byte **)(puVar5 + 0x77c24)" * (cast_expression "(byte **)(puVar5 + 0x77c24)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77c24)" ( (binary_expression "puVar5 + 0x77c24" identifier + number_literal) ))))) , (binary_expression "uVar4 == 0" identifier == number_literal)) )) (compound_statement "{\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }" { (expression_statement "puVar18 = puVar22;" (assignment_expression "puVar18 = puVar22" identifier = identifier) ;) (if_statement "if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }" if (parenthesized_expression "(uVar13 != 0)" ( (binary_expression "uVar13 != 0" identifier != number_literal) )) (compound_statement "{\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }" { (expression_statement "(**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);" (call_expression "(**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4)" (parenthesized_expression "(**(code **)(puVar5 + 0x788e8))" ( (pointer_expression "**(code **)(puVar5 + 0x788e8)" * (pointer_expression "*(code **)(puVar5 + 0x788e8)" * (cast_expression "(code **)(puVar5 + 0x788e8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x788e8)" ( (binary_expression "puVar5 + 0x788e8" identifier + number_literal) ))))) )) (argument_list "(&local_104,pbVar19 + 8,uVar13,4)" ( (pointer_expression "&local_104" & identifier) , (binary_expression "pbVar19 + 8" identifier + number_literal) , identifier , number_literal ))) ;) (expression_statement "(**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);" (call_expression "(**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8)" (parenthesized_expression "(**(code **)(puVar5 + 0x78acc))" ( (pointer_expression "**(code **)(puVar5 + 0x78acc)" * (pointer_expression "*(code **)(puVar5 + 0x78acc)" * (cast_expression "(code **)(puVar5 + 0x78acc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78acc)" ( (binary_expression "puVar5 + 0x78acc" identifier + number_literal) ))))) )) (argument_list "(pbVar19 + uVar13,pbVar19,8)" ( (binary_expression "pbVar19 + uVar13" identifier + identifier) , identifier , number_literal ))) ;) (expression_statement "pbVar17 = local_1ec;" (assignment_expression "pbVar17 = local_1ec" identifier = identifier) ;) (expression_statement "(**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);" (call_expression "(**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13)" (parenthesized_expression "(**(code **)(puVar5 + 0x78aa8))" ( (pointer_expression "**(code **)(puVar5 + 0x78aa8)" * (pointer_expression "*(code **)(puVar5 + 0x78aa8)" * (cast_expression "(code **)(puVar5 + 0x78aa8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78aa8)" ( (binary_expression "puVar5 + 0x78aa8" identifier + number_literal) ))))) )) (argument_list "(local_1ec,&local_104,uVar13)" ( identifier , (pointer_expression "&local_104" & identifier) , identifier ))) ;) })) (do_statement "do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));" do (compound_statement "{\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                }" { (expression_statement "pbVar19 = (byte *)puVar18[1];" (assignment_expression "pbVar19 = (byte *)puVar18[1]" identifier = (cast_expression "(byte *)puVar18[1]" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar18[1]" identifier [ number_literal ]))) ;) (labeled_statement "LAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;" statement_identifier : (expression_statement "uVar14 = uVar26 & 0x10;" (assignment_expression "uVar14 = uVar26 & 0x10" identifier = (binary_expression "uVar26 & 0x10" identifier & number_literal)) ;)) (expression_statement "puVar22 = puVar18;" (assignment_expression "puVar22 = puVar18" identifier = identifier) ;) (if_statement "if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;" if (parenthesized_expression "(pbVar19 == (byte *)0x0)" ( (binary_expression "pbVar19 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b27b0;" goto statement_identifier ;)) (labeled_statement "LAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();" statement_identifier : (expression_statement "uVar31 = (**(code **)(puVar5 + 0x77b34))();" (assignment_expression "uVar31 = (**(code **)(puVar5 + 0x77b34))()" identifier = (call_expression "(**(code **)(puVar5 + 0x77b34))()" (parenthesized_expression "(**(code **)(puVar5 + 0x77b34))" ( (pointer_expression "**(code **)(puVar5 + 0x77b34)" * (pointer_expression "*(code **)(puVar5 + 0x77b34)" * (cast_expression "(code **)(puVar5 + 0x77b34)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b34)" ( (binary_expression "puVar5 + 0x77b34" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;)) (labeled_statement "LAB_000b2b48:\n                  puVar18 = puVar22;" statement_identifier : (expression_statement "puVar18 = puVar22;" (assignment_expression "puVar18 = puVar22" identifier = identifier) ;)) }) while (parenthesized_expression "(((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0))" ( (binary_expression "((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0)" (parenthesized_expression "((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30))" ( (binary_expression "(((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)" (parenthesized_expression "(((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30))" ( (binary_expression "((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)" (parenthesized_expression "((int)uVar31 != 0x2e)" ( (binary_expression "(int)uVar31 != 0x2e" (cast_expression "(int)uVar31" ( (type_descriptor "int" primitive_type) ) identifier) != number_literal) )) || (parenthesized_expression "(9 < pbVar17[1] - 0x30)" ( (binary_expression "9 < pbVar17[1] - 0x30" number_literal < (binary_expression "pbVar17[1] - 0x30" (subscript_expression "pbVar17[1]" identifier [ number_literal ]) - number_literal)) ))) )) || (parenthesized_expression "(9 < pbVar17[2] - 0x30)" ( (binary_expression "9 < pbVar17[2] - 0x30" number_literal < (binary_expression "pbVar17[2] - 0x30" (subscript_expression "pbVar17[2]" identifier [ number_literal ]) - number_literal)) ))) )) || (parenthesized_expression "(uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0)" ( (comma_expression "uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0" (assignment_expression "uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8" identifier = (binary_expression "(int)((ulonglong)uVar31 >> 0x20) - 8" (cast_expression "(int)((ulonglong)uVar31 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar31 >> 0x20)" ( (binary_expression "(ulonglong)uVar31 >> 0x20" (cast_expression "(ulonglong)uVar31" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))) - number_literal)) , (binary_expression "pbVar17[3] != 0" (subscript_expression "pbVar17[3]" identifier [ number_literal ]) != number_literal)) ))) )) ;) (expression_statement "uVar4 = uVar13 & 1;" (assignment_expression "uVar4 = uVar13 & 1" identifier = (binary_expression "uVar13 & 1" identifier & number_literal)) ;) (if_statement "if (4 < uVar13) goto LAB_000b2ac4;" if (parenthesized_expression "(4 < uVar13)" ( (binary_expression "4 < uVar13" number_literal < identifier) )) (goto_statement "goto LAB_000b2ac4;" goto statement_identifier ;)) }))) }) while (parenthesized_expression "( true )" ( true )) ;) })) (expression_statement "local_1d4 = 0;" (assignment_expression "local_1d4 = 0" identifier = number_literal) ;) (expression_statement "local_1d0 = 0;" (assignment_expression "local_1d0 = 0" identifier = number_literal) ;) (expression_statement "local_1cc = 0;" (assignment_expression "local_1cc = 0" identifier = number_literal) ;) (if_statement "if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }" if (parenthesized_expression "((uVar4 & 0x40) == 0)" ( (binary_expression "(uVar4 & 0x40) == 0" (parenthesized_expression "(uVar4 & 0x40)" ( (binary_expression "uVar4 & 0x40" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }" { (expression_statement "(**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);" (call_expression "(**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4)" (parenthesized_expression "(**(code **)(puVar5 + 0x7847c))" ( (pointer_expression "**(code **)(puVar5 + 0x7847c)" * (pointer_expression "*(code **)(puVar5 + 0x7847c)" * (cast_expression "(code **)(puVar5 + 0x7847c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x7847c)" ( (binary_expression "puVar5 + 0x7847c" identifier + number_literal) ))))) )) (argument_list "(local_1ec,&local_1d4)" ( identifier , (pointer_expression "&local_1d4" & identifier) ))) ;) (labeled_statement "LAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }" statement_identifier : (if_statement "if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }" if (parenthesized_expression "(*local_1ec != 0x40)" ( (binary_expression "*local_1ec != 0x40" (pointer_expression "*local_1ec" * identifier) != number_literal) )) (compound_statement "{\n              local_1b4 = 0xffffffff;\n            }" { (expression_statement "local_1b4 = 0xffffffff;" (assignment_expression "local_1b4 = 0xffffffff" identifier = number_literal) ;) }))) (expression_statement "puVar18 = &local_1d4;" (assignment_expression "puVar18 = &local_1d4" identifier = (pointer_expression "&local_1d4" & identifier)) ;) (expression_statement "local_1dc[0] = (**(code **)(puVar5 + 0x78480))();" (assignment_expression "local_1dc[0] = (**(code **)(puVar5 + 0x78480))()" (subscript_expression "local_1dc[0]" identifier [ number_literal ]) = (call_expression "(**(code **)(puVar5 + 0x78480))()" (parenthesized_expression "(**(code **)(puVar5 + 0x78480))" ( (pointer_expression "**(code **)(puVar5 + 0x78480)" * (pointer_expression "*(code **)(puVar5 + 0x78480)" * (cast_expression "(code **)(puVar5 + 0x78480)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78480)" ( (binary_expression "puVar5 + 0x78480" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }" if (parenthesized_expression "(((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0))" ( (binary_expression "((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)" (parenthesized_expression "((uVar4 & 2) != 0)" ( (binary_expression "(uVar4 & 2) != 0" (parenthesized_expression "(uVar4 & 2)" ( (binary_expression "uVar4 & 2" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "(iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)" ( (comma_expression "iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22)" identifier = (call_expression "(**(code **)(puVar5 + 0x78708))(puVar22)" (parenthesized_expression "(**(code **)(puVar5 + 0x78708))" ( (pointer_expression "**(code **)(puVar5 + 0x78708)" * (pointer_expression "*(code **)(puVar5 + 0x78708)" * (cast_expression "(code **)(puVar5 + 0x78708)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78708)" ( (binary_expression "puVar5 + 0x78708" identifier + number_literal) ))))) )) (argument_list "(puVar22)" ( identifier )))) , (binary_expression "iVar12 < 0" identifier < number_literal)) ))) )) (compound_statement "{\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }" { (expression_statement "(**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);" (call_expression "(**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b90))" ( (pointer_expression "**(code **)(puVar5 + 0x77b90)" * (pointer_expression "*(code **)(puVar5 + 0x77b90)" * (cast_expression "(code **)(puVar5 + 0x77b90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b90)" ( (binary_expression "puVar5 + 0x77b90" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar5 + 0x77b00) + -0x4e34)" ( (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e34" (pointer_expression "*(int *)(puVar5 + 0x77b00)" * (cast_expression "(int *)(puVar5 + 0x77b00)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77b00)" ( (binary_expression "puVar5 + 0x77b00" identifier + number_literal) )))) + number_literal) ))) ;) })) (goto_statement "goto LAB_000b28d0;" goto statement_identifier ;) })) (expression_statement "iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4)" identifier = (call_expression "(**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4)" (parenthesized_expression "(**(code **)(puVar5 + 0x789f8))" ( (pointer_expression "**(code **)(puVar5 + 0x789f8)" * (pointer_expression "*(code **)(puVar5 + 0x789f8)" * (cast_expression "(code **)(puVar5 + 0x789f8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x789f8)" ( (binary_expression "puVar5 + 0x789f8" identifier + number_literal) ))))) )) (argument_list "(local_1ec,local_1e8,&local_1d4)" ( identifier , identifier , (pointer_expression "&local_1d4" & identifier) )))) ;) (if_statement "if (iVar12 != 0) goto LAB_000b2874;" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b2874;" goto statement_identifier ;)) (expression_statement "uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);" (assignment_expression "uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec)" identifier = (call_expression "(**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b3c))" ( (pointer_expression "**(code **)(puVar5 + 0x77b3c)" * (pointer_expression "*(code **)(puVar5 + 0x77b3c)" * (cast_expression "(code **)(puVar5 + 0x77b3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x77b3c)" ( (binary_expression "puVar5 + 0x77b3c" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(puVar5 + 0x77c24),local_1ec)" ( (pointer_expression "*(undefined4 *)(puVar5 + 0x77c24)" * (cast_expression "(undefined4 *)(puVar5 + 0x77c24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x77c24)" ( (binary_expression "puVar5 + 0x77c24" identifier + number_literal) )))) , identifier )))) ;) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" identifier = identifier) ;) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" identifier = identifier) ;) (labeled_statement "LAB_000b2834:\n          uVar14 = uVar26 & 0x10;" statement_identifier : (expression_statement "uVar14 = uVar26 & 0x10;" (assignment_expression "uVar14 = uVar26 & 0x10" identifier = (binary_expression "uVar26 & 0x10" identifier & number_literal)) ;)) (if_statement "if (uVar13 != 0) goto LAB_000b27b0;" if (parenthesized_expression "(uVar13 != 0)" ( (binary_expression "uVar13 != 0" identifier != number_literal) )) (goto_statement "goto LAB_000b27b0;" goto statement_identifier ;)) (expression_statement "uVar4 = uVar26 | 2;" (assignment_expression "uVar4 = uVar26 | 2" identifier = (binary_expression "uVar26 | 2" identifier | number_literal)) ;) (expression_statement "local_1ec = (byte *)0x0;" (assignment_expression "local_1ec = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;" if (parenthesized_expression "((uVar26 & 0x10) != 0)" ( (binary_expression "(uVar26 & 0x10) != 0" (parenthesized_expression "(uVar26 & 0x10)" ( (binary_expression "uVar26 & 0x10" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_000b27b8;" goto statement_identifier ;)) (expression_statement "pcVar30 = *(code **)(puVar5 + 0x78a84);" (assignment_expression "pcVar30 = *(code **)(puVar5 + 0x78a84)" identifier = (pointer_expression "*(code **)(puVar5 + 0x78a84)" * (cast_expression "(code **)(puVar5 + 0x78a84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x78a84)" ( (binary_expression "puVar5 + 0x78a84" identifier + number_literal) ))))) ;) (labeled_statement "LAB_000b2850:\n          (*pcVar30)(local_1dc);" statement_identifier : (expression_statement "(*pcVar30)(local_1dc);" (call_expression "(*pcVar30)(local_1dc)" (parenthesized_expression "(*pcVar30)" ( (pointer_expression "*pcVar30" * identifier) )) (argument_list "(local_1dc)" ( identifier ))) ;)) (expression_statement "pbVar19 = pbVar20;" (assignment_expression "pbVar19 = pbVar20" identifier = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })) })) }) (else_clause "else {\n    puVar22 = (undefined4 *)0x9;\n  }" else (compound_statement "{\n    puVar22 = (undefined4 *)0x9;\n  }" { (expression_statement "puVar22 = (undefined4 *)0x9;" (assignment_expression "puVar22 = (undefined4 *)0x9" identifier = (cast_expression "(undefined4 *)0x9" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (labeled_statement "LAB_000b204c:\n  uVar4 = 0;" statement_identifier : (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" identifier = number_literal) ;)) (expression_statement "piVar21 = (int *)0x0;" (assignment_expression "piVar21 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_74 = *(int *)PTR_optind_0012b0ec;" (assignment_expression "local_74 = *(int *)PTR_optind_0012b0ec" identifier = (pointer_expression "*(int *)PTR_optind_0012b0ec" * (cast_expression "(int *)PTR_optind_0012b0ec" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "puVar5 = PTR_FUN_0012a1a8 + -0x6a44;" (assignment_expression "puVar5 = PTR_FUN_0012a1a8 + -0x6a44" identifier = (binary_expression "PTR_FUN_0012a1a8 + -0x6a44" identifier + number_literal)) ;) (expression_statement "puVar6 = PTR_FUN_0012a1a8 + -0x1308;" (assignment_expression "puVar6 = PTR_FUN_0012a1a8 + -0x1308" identifier = (binary_expression "PTR_FUN_0012a1a8 + -0x1308" identifier + number_literal)) ;) (expression_statement "piVar23 = (int *)PTR_FUN_0012a1a8;" (assignment_expression "piVar23 = (int *)PTR_FUN_0012a1a8" identifier = (cast_expression "(int *)PTR_FUN_0012a1a8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (do_statement "do {\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  } while( true );" do (compound_statement "{\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  }" { (do_statement "do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);" do (compound_statement "{\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    }" { (expression_statement "local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);" (assignment_expression "local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5)" identifier = (cast_expression "(byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" ( (pointer_expression "*(code *)PTR_strsep_0012afa0" * (cast_expression "(code *)PTR_strsep_0012afa0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(auStack_3c,puVar5)" ( identifier , identifier ))))) ;) (if_statement "if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }" if (parenthesized_expression "(local_38 == (byte *)0x0)" ( (binary_expression "local_38 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }" { (if_statement "if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }" if (parenthesized_expression "(uVar4 == 0)" ( (binary_expression "uVar4 == 0" identifier == number_literal) )) (compound_statement "{\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }" { (expression_statement "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);" (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" ( (pointer_expression "*(code *)PTR_FUN_0012a1e4" * (cast_expression "(code *)PTR_FUN_0012a1e4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_FUN_0012a1a8 + -0x4e90)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x4e90" identifier + number_literal) ))) ;) })) (expression_statement "piVar25 = (int *)(param_2 + local_74 * 4);" (assignment_expression "piVar25 = (int *)(param_2 + local_74 * 4)" identifier = (cast_expression "(int *)(param_2 + local_74 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + local_74 * 4)" ( (binary_expression "param_2 + local_74 * 4" identifier + (binary_expression "local_74 * 4" identifier * number_literal)) )))) ;) (expression_statement "(*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);" (call_expression "(*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64)" (parenthesized_expression "(*(code *)PTR_qsort_0012ad24)" ( (pointer_expression "*(code *)PTR_qsort_0012ad24" * (cast_expression "(code *)PTR_qsort_0012ad24" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64)" ( identifier , identifier , number_literal , (binary_expression "PTR_LAB_0012aad4 + 0x1f64" identifier + number_literal) ))) ;) (if_statement "if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }" if (parenthesized_expression "(*piVar25 == 0)" ( (binary_expression "*piVar25 == 0" (pointer_expression "*piVar25" * identifier) == number_literal) )) (compound_statement "{\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }" { (expression_statement "piVar25 = piVar25 + -1;" (assignment_expression "piVar25 = piVar25 + -1" identifier = (binary_expression "piVar25 + -1" identifier + number_literal)) ;) (expression_statement "*piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);" (assignment_expression "*piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308)" (pointer_expression "*piVar25" * identifier) = (cast_expression "(int)(PTR_FUN_0012a1a8 + -0x1308)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(PTR_FUN_0012a1a8 + -0x1308)" ( (binary_expression "PTR_FUN_0012a1a8 + -0x1308" identifier + number_literal) )))) ;) })) (expression_statement "puVar6 = PTR_FUN_0012a3f0;" (assignment_expression "puVar6 = PTR_FUN_0012a3f0" identifier = identifier) ;) (expression_statement "puVar5 = PTR_FUN_0012a2fc;" (assignment_expression "puVar5 = PTR_FUN_0012a2fc" identifier = identifier) ;) (expression_statement "local_5c = 0;" (assignment_expression "local_5c = 0" identifier = number_literal) ;) (labeled_statement "LAB_000b216c:\n        iVar12 = (*(code *)puVar6)();" statement_identifier : (expression_statement "iVar12 = (*(code *)puVar6)();" (assignment_expression "iVar12 = (*(code *)puVar6)()" identifier = (call_expression "(*(code *)puVar6)()" (parenthesized_expression "(*(code *)puVar6)" ( (pointer_expression "*(code *)puVar6" * (cast_expression "(code *)puVar6" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;)) (if_statement "if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }" if (parenthesized_expression "(iVar12 == 0)" ( (binary_expression "iVar12 == 0" identifier == number_literal) )) (compound_statement "{\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }" { (expression_statement "local_5c = 1;" (assignment_expression "local_5c = 1" identifier = number_literal) ;) (goto_statement "goto LAB_000b21b8;" goto statement_identifier ;) })) (expression_statement "piVar23 = &local_34;" (assignment_expression "piVar23 = &local_34" identifier = (pointer_expression "&local_34" & identifier)) ;) (expression_statement "local_74 = 0;" (assignment_expression "local_74 = 0" identifier = number_literal) ;) (do_statement "do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );" do (compound_statement "{\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        }" { (expression_statement "iVar8 = (*(code *)puVar5)(iVar12);" (assignment_expression "iVar8 = (*(code *)puVar5)(iVar12)" identifier = (call_expression "(*(code *)puVar5)(iVar12)" (parenthesized_expression "(*(code *)puVar5)" ( (pointer_expression "*(code *)puVar5" * (cast_expression "(code *)puVar5" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar12)" ( identifier )))) ;) (expression_statement "local_34 = iVar8;" (assignment_expression "local_34 = iVar8" identifier = identifier) ;) (if_statement "if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }" { (expression_statement "(*(code *)PTR_FUN_0012a3f4)(iVar12);" (call_expression "(*(code *)PTR_FUN_0012a3f4)(iVar12)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3f4)" ( (pointer_expression "*(code *)PTR_FUN_0012a3f4" * (cast_expression "(code *)PTR_FUN_0012a3f4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar12)" ( identifier ))) ;) (labeled_statement "LAB_000b21b8:\n            piVar25 = piVar25 + 1;" statement_identifier : (expression_statement "piVar25 = piVar25 + 1;" (assignment_expression "piVar25 = piVar25 + 1" identifier = (binary_expression "piVar25 + 1" identifier + number_literal)) ;)) (if_statement "if (*piVar25 != 0) goto LAB_000b216c;" if (parenthesized_expression "(*piVar25 != 0)" ( (binary_expression "*piVar25 != 0" (pointer_expression "*piVar25" * identifier) != number_literal) )) (goto_statement "goto LAB_000b216c;" goto statement_identifier ;)) (expression_statement "iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);" (assignment_expression "iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c)" identifier = (call_expression "(*(code *)PTR_FUN_0012a3f8)(local_5c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3f8)" ( (pointer_expression "*(code *)PTR_FUN_0012a3f8" * (cast_expression "(code *)PTR_FUN_0012a3f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_5c)" ( identifier )))) ;) })) (expression_statement "iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);" (assignment_expression "iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8)" identifier = (call_expression "(*(code *)PTR_strlen_0012af3c)(iVar8)" (parenthesized_expression "(*(code *)PTR_strlen_0012af3c)" ( (pointer_expression "*(code *)PTR_strlen_0012af3c" * (cast_expression "(code *)PTR_strlen_0012af3c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8)" ( identifier )))) ;) (expression_statement "iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);" (assignment_expression "iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1)" identifier = (call_expression "(*(code *)PTR_FUN_0012a1d0)(iVar9 + 1)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1d0)" ( (pointer_expression "*(code *)PTR_FUN_0012a1d0" * (cast_expression "(code *)PTR_FUN_0012a1d0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9 + 1)" ( (binary_expression "iVar9 + 1" identifier + number_literal) )))) ;) (expression_statement "iVar8 = local_34;" (assignment_expression "iVar8 = local_34" identifier = identifier) ;) (expression_statement "puVar3 = PTR_stdout_0012ae40;" (assignment_expression "puVar3 = PTR_stdout_0012ae40" identifier = identifier) ;) (expression_statement "uVar26 = *(uint *)PTR_DAT_0012a334;" (assignment_expression "uVar26 = *(uint *)PTR_DAT_0012a334" identifier = (pointer_expression "*(uint *)PTR_DAT_0012a334" * (cast_expression "(uint *)PTR_DAT_0012a334" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }" if (parenthesized_expression "((uVar26 & 3) == 0)" ( (binary_expression "(uVar26 & 3) == 0" (parenthesized_expression "(uVar26 & 3)" ( (binary_expression "uVar26 & 3" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }" { (if_statement "if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }" if (parenthesized_expression "(puVar22 == (undefined4 *)&DAT_0000000a)" ( (binary_expression "puVar22 == (undefined4 *)&DAT_0000000a" identifier == (cast_expression "(undefined4 *)&DAT_0000000a" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0000000a" & identifier))) )) (compound_statement "{\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }" { (expression_statement "iVar9 = *piVar21;" (assignment_expression "iVar9 = *piVar21" identifier = (pointer_expression "*piVar21" * identifier)) ;) (if_statement "if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }" if (parenthesized_expression "(iVar9 <= local_74)" ( (binary_expression "iVar9 <= local_74" identifier <= identifier) )) (compound_statement "{\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }" { (if_statement "if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }" if (parenthesized_expression "(iVar9 < local_74)" ( (binary_expression "iVar9 < local_74" identifier < identifier) )) (compound_statement "{\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }" { (expression_statement "iVar16 = 0;" (assignment_expression "iVar16 = 0" identifier = number_literal) ;) (do_statement "do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);" do (compound_statement "{\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  }" { (expression_statement "iVar9 = iVar9 + 1;" (assignment_expression "iVar9 = iVar9 + 1" identifier = (binary_expression "iVar9 + 1" identifier + number_literal)) ;) (if_statement "if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" if (parenthesized_expression "(piVar21[iVar16 * 2 + 1] < iVar9)" ( (binary_expression "piVar21[iVar16 * 2 + 1] < iVar9" (subscript_expression "piVar21[iVar16 * 2 + 1]" identifier [ (binary_expression "iVar16 * 2 + 1" (binary_expression "iVar16 * 2" identifier * number_literal) + number_literal) ]) < identifier) )) (compound_statement "{\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }" { (if_statement "if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;" if (parenthesized_expression "(uVar4 <= iVar16 + 1U)" ( (binary_expression "uVar4 <= iVar16 + 1U" identifier <= (binary_expression "iVar16 + 1U" identifier + number_literal)) )) (goto_statement "goto LAB_000b22d0;" goto statement_identifier ;)) (expression_statement "iVar9 = piVar21[iVar16 * 2 + 2];" (assignment_expression "iVar9 = piVar21[iVar16 * 2 + 2]" identifier = (subscript_expression "piVar21[iVar16 * 2 + 2]" identifier [ (binary_expression "iVar16 * 2 + 2" (binary_expression "iVar16 * 2" identifier * number_literal) + number_literal) ])) ;) (labeled_statement "LAB_000b2350:\n                      iVar16 = iVar16 + 1;" statement_identifier : (expression_statement "iVar16 = iVar16 + 1;" (assignment_expression "iVar16 = iVar16 + 1" identifier = (binary_expression "iVar16 + 1" identifier + number_literal)) ;)) (if_statement "if (local_74 < iVar9) goto LAB_000b22d0;" if (parenthesized_expression "(local_74 < iVar9)" ( (binary_expression "local_74 < iVar9" identifier < identifier) )) (goto_statement "goto LAB_000b22d0;" goto statement_identifier ;)) }) (else_clause "else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" else (if_statement "if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" if (parenthesized_expression "(piVar21[iVar16 * 2 + 1] == -1)" ( (binary_expression "piVar21[iVar16 * 2 + 1] == -1" (subscript_expression "piVar21[iVar16 * 2 + 1]" identifier [ (binary_expression "iVar16 * 2 + 1" (binary_expression "iVar16 * 2" identifier * number_literal) + number_literal) ]) == number_literal) )) (compound_statement "{\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" { (if_statement "if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }" if (parenthesized_expression "(iVar16 + 1U < uVar4)" ( (binary_expression "iVar16 + 1U < uVar4" (binary_expression "iVar16 + 1U" identifier + number_literal) < identifier) )) (compound_statement "{\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }" { (expression_statement "iVar9 = piVar21[iVar16 * 2 + 2];" (assignment_expression "iVar9 = piVar21[iVar16 * 2 + 2]" identifier = (subscript_expression "piVar21[iVar16 * 2 + 2]" identifier [ (binary_expression "iVar16 * 2 + 2" (binary_expression "iVar16 * 2" identifier * number_literal) + number_literal) ])) ;) (goto_statement "goto LAB_000b2350;" goto statement_identifier ;) })) (goto_statement "goto LAB_000b22d0;" goto statement_identifier ;) })))) }) while (parenthesized_expression "(iVar9 < local_74)" ( (binary_expression "iVar9 < local_74" identifier < identifier) )) ;) })) (expression_statement "(*(code *)PTR_puts_0012afb4)(local_34);" (call_expression "(*(code *)PTR_puts_0012afb4)(local_34)" (parenthesized_expression "(*(code *)PTR_puts_0012afb4)" ( (pointer_expression "*(code *)PTR_puts_0012afb4" * (cast_expression "(code *)PTR_puts_0012afb4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_34)" ( identifier ))) ;) })) }) (else_clause "else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }" else (compound_statement "{\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }" { (expression_statement "local_2f = 0;" (assignment_expression "local_2f = 0" identifier = number_literal) ;) (expression_statement "local_30 = (char)puVar22;" (assignment_expression "local_30 = (char)puVar22" identifier = (cast_expression "(char)puVar22" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);" (assignment_expression "iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22)" identifier = (call_expression "(*(code *)PTR_strchr_0012af54)(local_34,puVar22)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" ( (pointer_expression "*(code *)PTR_strchr_0012af54" * (cast_expression "(code *)PTR_strchr_0012af54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(local_34,puVar22)" ( identifier , identifier )))) ;) (expression_statement "puVar3 = PTR_stdout_0012ae40;" (assignment_expression "puVar3 = PTR_stdout_0012ae40" identifier = identifier) ;) (if_statement "if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }" { (expression_statement "iVar16 = 0;" (assignment_expression "iVar16 = 0" identifier = number_literal) ;) (expression_statement "iVar27 = -1;" (assignment_expression "iVar27 = -1" identifier = number_literal) ;) (expression_statement "local_68 = 1;" (assignment_expression "local_68 = 1" identifier = number_literal) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (expression_statement "iVar9 = iVar8;" (assignment_expression "iVar9 = iVar8" identifier = identifier) ;) (expression_statement "local_70 = piVar21;" (assignment_expression "local_70 = piVar21" identifier = identifier) ;) (while_statement "while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }" { (expression_statement "iVar29 = *local_70;" (assignment_expression "iVar29 = *local_70" identifier = (pointer_expression "*local_70" * identifier)) ;) (do_statement "do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);" do (compound_statement "{\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  }" { (for_statement "for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }" for ( ; (parenthesized_expression "(iVar9 != 0 && (iVar27 < iVar29))" ( (binary_expression "iVar9 != 0 && (iVar27 < iVar29)" (binary_expression "iVar9 != 0" identifier != number_literal) && (parenthesized_expression "(iVar27 < iVar29)" ( (binary_expression "iVar27 < iVar29" identifier < identifier) ))) )) ; (assignment_expression "iVar27 = iVar27 + 1" identifier = (binary_expression "iVar27 + 1" identifier + number_literal)) ) (compound_statement "{\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }" { (expression_statement "iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);" (assignment_expression "iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30)" identifier = (call_expression "(*(code *)PTR_strsep_0012afa0)(piVar23,&local_30)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" ( (pointer_expression "*(code *)PTR_strsep_0012afa0" * (cast_expression "(code *)PTR_strsep_0012afa0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar23,&local_30)" ( identifier , (pointer_expression "&local_30" & identifier) )))) ;) (expression_statement "iVar9 = local_34;" (assignment_expression "iVar9 = local_34" identifier = identifier) ;) })) (if_statement "if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }" if (parenthesized_expression "(((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0'))" ( (binary_expression "((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')" (parenthesized_expression "((iVar16 != 0) && (iVar27 == iVar29))" ( (binary_expression "(iVar16 != 0) && (iVar27 == iVar29)" (parenthesized_expression "(iVar16 != 0)" ( (binary_expression "iVar16 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar27 == iVar29)" ( (binary_expression "iVar27 == iVar29" identifier == identifier) ))) )) && (parenthesized_expression "(*(char *)(iVar10 + iVar27) == '\0')" ( (binary_expression "*(char *)(iVar10 + iVar27) == '\0'" (pointer_expression "*(char *)(iVar10 + iVar27)" * (cast_expression "(char *)(iVar10 + iVar27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + iVar27)" ( (binary_expression "iVar10 + iVar27" identifier + identifier) )))) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }" { (expression_statement "iVar9 = *(int *)puVar3;" (assignment_expression "iVar9 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }" if (parenthesized_expression "(local_60 != 0)" ( (binary_expression "local_60 != 0" identifier != number_literal) )) (compound_statement "{\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }" { (expression_statement "puVar11 = *(undefined1 **)(iVar9 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar9 + 0x14)" identifier = (pointer_expression "*(undefined1 **)(iVar9 + 0x14)" * (cast_expression "(undefined1 **)(iVar9 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x14)" ( (binary_expression "iVar9 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }" if (parenthesized_expression "(puVar11 < *(undefined1 **)(iVar9 + 0x18))" ( (binary_expression "puVar11 < *(undefined1 **)(iVar9 + 0x18)" identifier < (pointer_expression "*(undefined1 **)(iVar9 + 0x18)" * (cast_expression "(undefined1 **)(iVar9 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x18)" ( (binary_expression "iVar9 + 0x18" identifier + number_literal) ))))) )) (compound_statement "{\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }" { (expression_statement "*(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;" (assignment_expression "*(undefined1 **)(iVar9 + 0x14) = puVar11 + 1" (pointer_expression "*(undefined1 **)(iVar9 + 0x14)" * (cast_expression "(undefined1 **)(iVar9 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x14)" ( (binary_expression "iVar9 + 0x14" identifier + number_literal) )))) = (binary_expression "puVar11 + 1" identifier + number_literal)) ;) (expression_statement "*puVar11 = (char)puVar22;" (assignment_expression "*puVar11 = (char)puVar22" (pointer_expression "*puVar11" * identifier) = (cast_expression "(char)puVar22" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (expression_statement "iVar9 = *(int *)puVar3;" (assignment_expression "iVar9 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) }) (else_clause "else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }" else (compound_statement "{\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }" { (expression_statement "(*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);" (call_expression "(*(code *)PTR___overflow_0012ada8)(iVar9,puVar22)" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" ( (pointer_expression "*(code *)PTR___overflow_0012ada8" * (cast_expression "(code *)PTR___overflow_0012ada8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9,puVar22)" ( identifier , identifier ))) ;) (expression_statement "iVar9 = *(int *)puVar3;" (assignment_expression "iVar9 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) }))) })) (expression_statement "local_60 = local_60 + 1;" (assignment_expression "local_60 = local_60 + 1" identifier = (binary_expression "local_60 + 1" identifier + number_literal)) ;) (expression_statement "(*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);" (call_expression "(*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9)" (parenthesized_expression "(*(code *)PTR_fputs_unlocked_0012b204)" ( (pointer_expression "*(code *)PTR_fputs_unlocked_0012b204" * (cast_expression "(code *)PTR_fputs_unlocked_0012b204" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar16,iVar9)" ( identifier , identifier ))) ;) (expression_statement "*(char *)(iVar10 + iVar27) = 'X';" (assignment_expression "*(char *)(iVar10 + iVar27) = 'X'" (pointer_expression "*(char *)(iVar10 + iVar27)" * (cast_expression "(char *)(iVar10 + iVar27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + iVar27)" ( (binary_expression "iVar10 + iVar27" identifier + identifier) )))) = (char_literal "'X'" ' character ')) ;) })) (expression_statement "iVar29 = iVar29 + 1;" (assignment_expression "iVar29 = iVar29 + 1" identifier = (binary_expression "iVar29 + 1" identifier + number_literal)) ;) (expression_statement "iVar9 = local_34;" (assignment_expression "iVar9 = local_34" identifier = identifier) ;) (if_statement "if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }" if (parenthesized_expression "(local_70[1] < iVar29)" ( (binary_expression "local_70[1] < iVar29" (subscript_expression "local_70[1]" identifier [ number_literal ]) < identifier) )) (compound_statement "{\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }" { (if_statement "if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;" if (parenthesized_expression "((uVar4 <= local_68) || (local_34 == 0))" ( (binary_expression "(uVar4 <= local_68) || (local_34 == 0)" (parenthesized_expression "(uVar4 <= local_68)" ( (binary_expression "uVar4 <= local_68" identifier <= identifier) )) || (parenthesized_expression "(local_34 == 0)" ( (binary_expression "local_34 == 0" identifier == number_literal) ))) )) (goto_statement "goto LAB_000b252c;" goto statement_identifier ;)) (goto_statement "goto LAB_000b24fc;" goto statement_identifier ;) })) (if_statement "if (local_34 == 0) goto LAB_000b252c;" if (parenthesized_expression "(local_34 == 0)" ( (binary_expression "local_34 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000b252c;" goto statement_identifier ;)) }) while (parenthesized_expression "(local_70[1] != -1)" ( (binary_expression "local_70[1] != -1" (subscript_expression "local_70[1]" identifier [ number_literal ]) != number_literal) )) ;) (if_statement "if (uVar4 <= local_68) break;" if (parenthesized_expression "(uVar4 <= local_68)" ( (binary_expression "uVar4 <= local_68" identifier <= identifier) )) (break_statement "break;" break ;)) (labeled_statement "LAB_000b24fc:\n                  local_70 = local_70 + 2;" statement_identifier : (expression_statement "local_70 = local_70 + 2;" (assignment_expression "local_70 = local_70 + 2" identifier = (binary_expression "local_70 + 2" identifier + number_literal)) ;)) (expression_statement "local_68 = local_68 + 1;" (assignment_expression "local_68 = local_68 + 1" identifier = (binary_expression "local_68 + 1" identifier + number_literal)) ;) })) (labeled_statement "LAB_000b252c:\n                iVar16 = *(int *)puVar3;" statement_identifier : (expression_statement "iVar16 = *(int *)puVar3;" (assignment_expression "iVar16 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;)) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) ))))) ;) (if_statement "if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;" if (parenthesized_expression "(puVar11 < *(undefined1 **)(iVar16 + 0x18))" ( (binary_expression "puVar11 < *(undefined1 **)(iVar16 + 0x18)" identifier < (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" * (cast_expression "(undefined1 **)(iVar16 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x18)" ( (binary_expression "iVar16 + 0x18" identifier + number_literal) ))))) )) (goto_statement "goto LAB_000b2544;" goto statement_identifier ;)) (goto_statement "goto LAB_000b22bc;" goto statement_identifier ;) })) (if_statement "if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }" if (parenthesized_expression "((uVar26 & 0x10) == 0)" ( (binary_expression "(uVar26 & 0x10) == 0" (parenthesized_expression "(uVar26 & 0x10)" ( (binary_expression "uVar26 & 0x10" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }" { (expression_statement "(*(code *)PTR_puts_0012afb4)(iVar8);" (call_expression "(*(code *)PTR_puts_0012afb4)(iVar8)" (parenthesized_expression "(*(code *)PTR_puts_0012afb4)" ( (pointer_expression "*(code *)PTR_puts_0012afb4" * (cast_expression "(code *)PTR_puts_0012afb4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8)" ( identifier ))) ;) })) }))) }) (else_clause "else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }" else (compound_statement "{\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }" { (expression_statement "iVar16 = *(int *)PTR_stdout_0012ae40;" (assignment_expression "iVar16 = *(int *)PTR_stdout_0012ae40" identifier = (pointer_expression "*(int *)PTR_stdout_0012ae40" * (cast_expression "(int *)PTR_stdout_0012ae40" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "puVar15 = *(undefined1 **)(iVar16 + 0x18);" (assignment_expression "puVar15 = *(undefined1 **)(iVar16 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" * (cast_expression "(undefined1 **)(iVar16 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x18)" ( (binary_expression "iVar16 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "piVar28 = piVar21;" (assignment_expression "piVar28 = piVar21" identifier = identifier) ;) (do_statement "do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);" do (compound_statement "{\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            }" { (while_statement "while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }" while (parenthesized_expression "(iVar27 = *piVar28, iVar9 <= iVar27)" ( (comma_expression "iVar27 = *piVar28, iVar9 <= iVar27" (assignment_expression "iVar27 = *piVar28" identifier = (pointer_expression "*piVar28" * identifier)) , (binary_expression "iVar9 <= iVar27" identifier <= identifier)) )) (compound_statement "{\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }" { (labeled_statement "LAB_000b22a0:\n                piVar28 = piVar28 + 2;" statement_identifier : (expression_statement "piVar28 = piVar28 + 2;" (assignment_expression "piVar28 = piVar28 + 2" identifier = (binary_expression "piVar28 + 2" identifier + number_literal)) ;)) (if_statement "if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }" if (parenthesized_expression "(piVar21 + uVar4 * 2 == piVar28)" ( (binary_expression "piVar21 + uVar4 * 2 == piVar28" (binary_expression "piVar21 + uVar4 * 2" identifier + (binary_expression "uVar4 * 2" identifier * number_literal)) == identifier) )) (compound_statement "{\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }" { (expression_statement "bVar2 = puVar11 < puVar15;" (assignment_expression "bVar2 = puVar11 < puVar15" identifier = (binary_expression "puVar11 < puVar15" identifier < identifier)) ;) (goto_statement "goto LAB_000b22b4;" goto statement_identifier ;) })) })) (expression_statement "pcVar7 = (char *)(iVar10 + iVar27);" (assignment_expression "pcVar7 = (char *)(iVar10 + iVar27)" identifier = (cast_expression "(char *)(iVar10 + iVar27)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar10 + iVar27)" ( (binary_expression "iVar10 + iVar27" identifier + identifier) )))) ;) (do_statement "do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);" do (compound_statement "{\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              }" { (if_statement "if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" if (parenthesized_expression "(*pcVar7 == '\0')" ( (binary_expression "*pcVar7 == '\0'" (pointer_expression "*pcVar7" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" { (expression_statement "*pcVar7 = 'X';" (assignment_expression "*pcVar7 = 'X'" (pointer_expression "*pcVar7" * identifier) = (char_literal "'X'" ' character ')) ;) (expression_statement "uVar1 = *(undefined1 *)(local_34 + iVar27);" (assignment_expression "uVar1 = *(undefined1 *)(local_34 + iVar27)" identifier = (pointer_expression "*(undefined1 *)(local_34 + iVar27)" * (cast_expression "(undefined1 *)(local_34 + iVar27)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_34 + iVar27)" ( (binary_expression "local_34 + iVar27" identifier + identifier) ))))) ;) (if_statement "if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }" if (parenthesized_expression "(puVar15 <= puVar11)" ( (binary_expression "puVar15 <= puVar11" identifier <= identifier) )) (compound_statement "{\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }" { (expression_statement "(*(code *)PTR___overflow_0012ada8)();" (call_expression "(*(code *)PTR___overflow_0012ada8)()" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" ( (pointer_expression "*(code *)PTR___overflow_0012ada8" * (cast_expression "(code *)PTR___overflow_0012ada8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "iVar16 = *(int *)puVar3;" (assignment_expression "iVar16 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "puVar15 = *(undefined1 **)(iVar16 + 0x18);" (assignment_expression "puVar15 = *(undefined1 **)(iVar16 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" * (cast_expression "(undefined1 **)(iVar16 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x18)" ( (binary_expression "iVar16 + 0x18" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000b228c;" goto statement_identifier ;) })) (expression_statement "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;" (assignment_expression "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1" (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) )))) = (binary_expression "puVar11 + 1" identifier + number_literal)) ;) (expression_statement "*puVar11 = uVar1;" (assignment_expression "*puVar11 = uVar1" (pointer_expression "*puVar11" * identifier) = identifier) ;) (expression_statement "iVar16 = *(int *)puVar3;" (assignment_expression "iVar16 = *(int *)puVar3" identifier = (pointer_expression "*(int *)puVar3" * (cast_expression "(int *)puVar3" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "puVar15 = *(undefined1 **)(iVar16 + 0x18);" (assignment_expression "puVar15 = *(undefined1 **)(iVar16 + 0x18)" identifier = (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" * (cast_expression "(undefined1 **)(iVar16 + 0x18)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x18)" ( (binary_expression "iVar16 + 0x18" identifier + number_literal) ))))) ;) (if_statement "if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" if (parenthesized_expression "(piVar28[1] < iVar27 + 1)" ( (binary_expression "piVar28[1] < iVar27 + 1" (subscript_expression "piVar28[1]" identifier [ number_literal ]) < (binary_expression "iVar27 + 1" identifier + number_literal)) )) (goto_statement "goto LAB_000b22a0;" goto statement_identifier ;)) }) (else_clause "else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" else (compound_statement "{\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" { (labeled_statement "LAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" statement_identifier : (if_statement "if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" if (parenthesized_expression "(piVar28[1] < iVar27 + 1)" ( (binary_expression "piVar28[1] < iVar27 + 1" (subscript_expression "piVar28[1]" identifier [ number_literal ]) < (binary_expression "iVar27 + 1" identifier + number_literal)) )) (goto_statement "goto LAB_000b22a0;" goto statement_identifier ;))) }))) (expression_statement "iVar27 = iVar27 + 1;" (assignment_expression "iVar27 = iVar27 + 1" identifier = (binary_expression "iVar27 + 1" identifier + number_literal)) ;) (expression_statement "pcVar7 = pcVar7 + 1;" (assignment_expression "pcVar7 = pcVar7 + 1" identifier = (binary_expression "pcVar7 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar9 != iVar27)" ( (binary_expression "iVar9 != iVar27" identifier != identifier) )) ;) (expression_statement "piVar28 = piVar28 + 2;" (assignment_expression "piVar28 = piVar28 + 2" identifier = (binary_expression "piVar28 + 2" identifier + number_literal)) ;) }) while (parenthesized_expression "(piVar21 + uVar4 * 2 != piVar28)" ( (binary_expression "piVar21 + uVar4 * 2 != piVar28" (binary_expression "piVar21 + uVar4 * 2" identifier + (binary_expression "uVar4 * 2" identifier * number_literal)) != identifier) )) ;) (expression_statement "bVar2 = puVar11 < puVar15;" (assignment_expression "bVar2 = puVar11 < puVar15" identifier = (binary_expression "puVar11 < puVar15" identifier < identifier)) ;) (labeled_statement "LAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" statement_identifier : (if_statement "if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" if (parenthesized_expression "(bVar2)" ( identifier )) (compound_statement "{\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }" { (labeled_statement "LAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;" statement_identifier : (expression_statement "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;" (assignment_expression "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1" (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" * (cast_expression "(undefined1 **)(iVar16 + 0x14)" ( (type_descriptor "undefined1 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar16 + 0x14)" ( (binary_expression "iVar16 + 0x14" identifier + number_literal) )))) = (binary_expression "puVar11 + 1" identifier + number_literal)) ;)) (expression_statement "*puVar11 = 10;" (assignment_expression "*puVar11 = 10" (pointer_expression "*puVar11" * identifier) = number_literal) ;) }) (else_clause "else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" else (compound_statement "{\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" { (labeled_statement "LAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);" statement_identifier : (expression_statement "(*(code *)PTR___overflow_0012ada8)(iVar16,10);" (call_expression "(*(code *)PTR___overflow_0012ada8)(iVar16,10)" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" ( (pointer_expression "*(code *)PTR___overflow_0012ada8" * (cast_expression "(code *)PTR___overflow_0012ada8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar16,10)" ( identifier , number_literal ))) ;)) })))) }))) (labeled_statement "LAB_000b22d0:\n          local_74 = local_74 + 1;" statement_identifier : (expression_statement "local_74 = local_74 + 1;" (assignment_expression "local_74 = local_74 + 1" identifier = (binary_expression "local_74 + 1" identifier + number_literal)) ;)) (expression_statement "(*(code *)PTR_free_0012b168)(iVar10);" (call_expression "(*(code *)PTR_free_0012b168)(iVar10)" (parenthesized_expression "(*(code *)PTR_free_0012b168)" ( (pointer_expression "*(code *)PTR_free_0012b168" * (cast_expression "(code *)PTR_free_0012b168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar10)" ( identifier ))) ;) (expression_statement "(*(code *)PTR_free_0012b168)(iVar8);" (call_expression "(*(code *)PTR_free_0012b168)(iVar8)" (parenthesized_expression "(*(code *)PTR_free_0012b168)" ( (pointer_expression "*(code *)PTR_free_0012b168" * (cast_expression "(code *)PTR_free_0012b168" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8)" ( identifier ))) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })) }) while (parenthesized_expression "(*local_38 == 0)" ( (binary_expression "*local_38 == 0" (pointer_expression "*local_38" * identifier) == number_literal) )) ;) (expression_statement "pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);" (assignment_expression "pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6)" identifier = (cast_expression "(char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" ( (pointer_expression "*(code *)PTR_strsep_0012afa0" * (cast_expression "(code *)PTR_strsep_0012afa0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(&local_38,puVar6)" ( (pointer_expression "&local_38" & identifier) , identifier ))))) ;) (if_statement "if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }" if (parenthesized_expression "((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0))" ( (binary_expression "(*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)" (parenthesized_expression "(*pcVar7 == '\0')" ( (binary_expression "*pcVar7 == '\0'" (pointer_expression "*pcVar7" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) || (parenthesized_expression "(iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)" ( (comma_expression "iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0" (assignment_expression "iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7)" identifier = (call_expression "(*(code *)PTR_FUN_0012a3e8)(pcVar7)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3e8)" ( (pointer_expression "*(code *)PTR_FUN_0012a3e8" * (cast_expression "(code *)PTR_FUN_0012a3e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pcVar7)" ( identifier )))) , (binary_expression "iVar12 == 0" identifier == number_literal)) ))) )) (compound_statement "{\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }" { (expression_statement "piVar25 = (int *)0x0;" (assignment_expression "piVar25 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (if_statement "if (local_38 != (byte *)0x0) goto LAB_000b25f8;" if (parenthesized_expression "(local_38 != (byte *)0x0)" ( (binary_expression "local_38 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b25f8;" goto statement_identifier ;)) (labeled_statement "LAB_000b20c8:\n      piVar23 = (int *)0xffffffff;" statement_identifier : (expression_statement "piVar23 = (int *)0xffffffff;" (assignment_expression "piVar23 = (int *)0xffffffff" identifier = (cast_expression "(int *)0xffffffff" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) }) (else_clause "else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }" else (compound_statement "{\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }" { (expression_statement "piVar25 = (int *)(iVar12 + -1);" (assignment_expression "piVar25 = (int *)(iVar12 + -1)" identifier = (cast_expression "(int *)(iVar12 + -1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -1)" ( (binary_expression "iVar12 + -1" identifier + number_literal) )))) ;) (if_statement "if (local_38 == (byte *)0x0) goto LAB_000b20c8;" if (parenthesized_expression "(local_38 == (byte *)0x0)" ( (binary_expression "local_38 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_000b20c8;" goto statement_identifier ;)) (labeled_statement "LAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;" statement_identifier : (expression_statement "piVar23 = (int *)0x7fffffff;" (assignment_expression "piVar23 = (int *)0x7fffffff" identifier = (cast_expression "(int *)0x7fffffff" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (if_statement "if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }" if (parenthesized_expression "(*local_38 != 0)" ( (binary_expression "*local_38 != 0" (pointer_expression "*local_38" * identifier) != number_literal) )) (compound_statement "{\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }" { (expression_statement "piVar23 = (int *)0x7ffffffe;" (assignment_expression "piVar23 = (int *)0x7ffffffe" identifier = (cast_expression "(int *)0x7ffffffe" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar12 = (*(code *)PTR_FUN_0012a3e8)();" (assignment_expression "iVar12 = (*(code *)PTR_FUN_0012a3e8)()" identifier = (call_expression "(*(code *)PTR_FUN_0012a3e8)()" (parenthesized_expression "(*(code *)PTR_FUN_0012a3e8)" ( (pointer_expression "*(code *)PTR_FUN_0012a3e8" * (cast_expression "(code *)PTR_FUN_0012a3e8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }" if (parenthesized_expression "(iVar12 != 0)" ( (binary_expression "iVar12 != 0" identifier != number_literal) )) (compound_statement "{\n          piVar23 = (int *)(iVar12 + -1);\n        }" { (expression_statement "piVar23 = (int *)(iVar12 + -1);" (assignment_expression "piVar23 = (int *)(iVar12 + -1)" identifier = (cast_expression "(int *)(iVar12 + -1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar12 + -1)" ( (binary_expression "iVar12 + -1" identifier + number_literal) )))) ;) })) (if_statement "if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }" if (parenthesized_expression "(piVar25 == piVar23)" ( (binary_expression "piVar25 == piVar23" identifier == identifier) )) (compound_statement "{\n          piVar23 = (int *)0xffffffff;\n        }" { (expression_statement "piVar23 = (int *)0xffffffff;" (assignment_expression "piVar23 = (int *)0xffffffff" identifier = (cast_expression "(int *)0xffffffff" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) })) }))) (expression_statement "piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);" (assignment_expression "piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4)" identifier = (cast_expression "(int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3b8)" ( (pointer_expression "*(code *)PTR_FUN_0012a3b8" * (cast_expression "(code *)PTR_FUN_0012a3b8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(piVar21,0x804,uVar4)" ( identifier , number_literal , identifier ))))) ;) (expression_statement "iVar12 = uVar4 * 2;" (assignment_expression "iVar12 = uVar4 * 2" identifier = (binary_expression "uVar4 * 2" identifier * number_literal)) ;) (expression_statement "uVar4 = uVar4 + 1;" (assignment_expression "uVar4 = uVar4 + 1" identifier = (binary_expression "uVar4 + 1" identifier + number_literal)) ;) (expression_statement "piVar21[iVar12] = (int)piVar25;" (assignment_expression "piVar21[iVar12] = (int)piVar25" (subscript_expression "piVar21[iVar12]" identifier [ identifier ]) = (cast_expression "(int)piVar25" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "(piVar21 + iVar12)[1] = (int)piVar23;" (assignment_expression "(piVar21 + iVar12)[1] = (int)piVar23" (subscript_expression "(piVar21 + iVar12)[1]" (parenthesized_expression "(piVar21 + iVar12)" ( (binary_expression "piVar21 + iVar12" identifier + identifier) )) [ number_literal ]) = (cast_expression "(int)piVar23" ( (type_descriptor "int" primitive_type) ) identifier)) ;) }) while (parenthesized_expression "( true )" ( true )) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) )))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( IDENT ))) * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) )))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (do_statement do (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;))) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;))) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != 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 (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( IDENT ))) * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (pointer_expression & IDENT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))) ;)) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (field_expression IDENT . field_identifier) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + IDENT) )))) = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + IDENT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + IDENT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + IDENT) )))) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) = LIT) ;) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT , IDENT , (pointer_expression & IDENT) ))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression (parenthesized_expression ( IDENT )) * IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (labeled_statement statement_identifier : (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression IDENT == LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression & IDENT) , (binary_expression IDENT + LIT) , IDENT , LIT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression IDENT + IDENT) , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT ))) ;) })) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) != LIT) )) || (parenthesized_expression ( (binary_expression LIT < (binary_expression (subscript_expression IDENT [ LIT ]) - LIT)) ))) )) || (parenthesized_expression ( (binary_expression LIT < (binary_expression (subscript_expression IDENT [ LIT ]) - LIT)) ))) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) - LIT)) , (binary_expression (subscript_expression IDENT [ LIT ]) != LIT)) ))) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) }))) }) while (parenthesized_expression ( BOOL )) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (pointer_expression & IDENT) ))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) , (binary_expression IDENT < LIT)) ))) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , (pointer_expression & IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( BOOL )) ;) })) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (do_statement do (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , LIT , (binary_expression IDENT + LIT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ (binary_expression (binary_expression IDENT * LIT) + LIT) ]) < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ (binary_expression (binary_expression IDENT * LIT) + LIT) ])) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ (binary_expression (binary_expression IDENT * LIT) + LIT) ]) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ (binary_expression (binary_expression IDENT * LIT) + LIT) ])) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })))) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression 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 = (pointer_expression * IDENT)) ;) (do_statement do (compound_statement { (for_statement for ( ; (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (binary_expression IDENT < IDENT) ))) )) ; (assignment_expression IDENT = (binary_expression IDENT + LIT)) ) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (pointer_expression & IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT == IDENT) ))) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) }))) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) = (char_literal ' character ')) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }) while (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (break_statement break ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) })) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * IDENT)) , (binary_expression IDENT <= IDENT)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT < IDENT)) ;) (goto_statement goto statement_identifier ;) })) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' character ')) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) < (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) < (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;))) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT + (binary_expression IDENT * LIT)) != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < IDENT)) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , LIT ))) ;)) })))) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) }) while (parenthesized_expression ( BOOL )) ;) })) }) while (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression & IDENT) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_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) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) })) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , LIT , IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ IDENT ]) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (subscript_expression (parenthesized_expression ( (binary_expression IDENT + IDENT) )) [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }) while (parenthesized_expression ( BOOL )) ;) })))
(function_definition "undefined4 FUN_000b1f74(undefined4 param_1,int param_2)\n\n{\n  undefined1 uVar1;\n  bool bVar2;\n  undefined *puVar3;\n  uint uVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  char *pcVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  int iVar12;\n  uint uVar13;\n  uint uVar14;\n  undefined1 *puVar15;\n  int iVar16;\n  byte *pbVar17;\n  undefined4 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  int *piVar21;\n  undefined4 *puVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  int *piVar25;\n  uint uVar26;\n  int iVar27;\n  int *piVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined8 uVar31;\n  byte *local_1ec;\n  undefined4 local_1e8;\n  undefined4 local_1e4;\n  int local_1e0;\n  undefined4 local_1dc [2];\n  undefined4 local_1d4;\n  undefined4 local_1d0;\n  undefined4 local_1cc;\n  undefined4 local_1b4;\n  undefined1 auStack_1a8 [72];\n  undefined4 local_160;\n  undefined4 local_104;\n  undefined4 local_100;\n  undefined4 local_fc;\n  undefined4 *local_f8;\n  undefined4 local_f4;\n  undefined2 local_f0;\n  undefined1 local_ee;\n  byte *local_c4;\n  undefined4 uStack_c0;\n  int local_74;\n  int *local_70;\n  uint local_68;\n  int local_60;\n  undefined4 local_5c;\n  undefined1 auStack_3c [4];\n  byte *local_38;\n  int local_34;\n  undefined1 local_30;\n  undefined1 local_2f;\n  undefined4 local_2c;\n  \n  local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;\n  uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);\n  if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }\n  if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }\n  if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }\nLAB_000b204c:\n  uVar4 = 0;\n  piVar21 = (int *)0x0;\n  local_74 = *(int *)PTR_optind_0012b0ec;\n  puVar5 = PTR_FUN_0012a1a8 + -0x6a44;\n  puVar6 = PTR_FUN_0012a1a8 + -0x1308;\n  piVar23 = (int *)PTR_FUN_0012a1a8;\n  do {\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  } while( true );\n}" (type_identifier "undefined4") (function_declarator "FUN_000b1f74(undefined4 param_1,int param_2)" (identifier "FUN_000b1f74") (parameter_list "(undefined4 param_1,int param_2)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) () ")"))) (compound_statement "{\n  undefined1 uVar1;\n  bool bVar2;\n  undefined *puVar3;\n  uint uVar4;\n  undefined *puVar5;\n  undefined *puVar6;\n  char *pcVar7;\n  int iVar8;\n  int iVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  int iVar12;\n  uint uVar13;\n  uint uVar14;\n  undefined1 *puVar15;\n  int iVar16;\n  byte *pbVar17;\n  undefined4 *puVar18;\n  byte *pbVar19;\n  byte *pbVar20;\n  int *piVar21;\n  undefined4 *puVar22;\n  int *piVar23;\n  undefined4 *puVar24;\n  int *piVar25;\n  uint uVar26;\n  int iVar27;\n  int *piVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined8 uVar31;\n  byte *local_1ec;\n  undefined4 local_1e8;\n  undefined4 local_1e4;\n  int local_1e0;\n  undefined4 local_1dc [2];\n  undefined4 local_1d4;\n  undefined4 local_1d0;\n  undefined4 local_1cc;\n  undefined4 local_1b4;\n  undefined1 auStack_1a8 [72];\n  undefined4 local_160;\n  undefined4 local_104;\n  undefined4 local_100;\n  undefined4 local_fc;\n  undefined4 *local_f8;\n  undefined4 local_f4;\n  undefined2 local_f0;\n  undefined1 local_ee;\n  byte *local_c4;\n  undefined4 uStack_c0;\n  int local_74;\n  int *local_70;\n  uint local_68;\n  int local_60;\n  undefined4 local_5c;\n  undefined1 auStack_3c [4];\n  byte *local_38;\n  int local_34;\n  undefined1 local_30;\n  undefined1 local_2f;\n  undefined4 local_2c;\n  \n  local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;\n  uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);\n  if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }\n  if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }\n  if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }\nLAB_000b204c:\n  uVar4 = 0;\n  piVar21 = (int *)0x0;\n  local_74 = *(int *)PTR_optind_0012b0ec;\n  puVar5 = PTR_FUN_0012a1a8 + -0x6a44;\n  puVar6 = PTR_FUN_0012a1a8 + -0x1308;\n  piVar23 = (int *)PTR_FUN_0012a1a8;\n  do {\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  } while( true );\n}" ({ "{") (declaration "undefined1 uVar1;" (type_identifier "undefined1") (identifier "uVar1") (; ";")) (declaration "bool bVar2;" (primitive_type "bool") (identifier "bVar2") (; ";")) (declaration "undefined *puVar3;" (type_identifier "undefined") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "undefined *puVar5;" (type_identifier "undefined") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "undefined *puVar6;" (type_identifier "undefined") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "char *pcVar7;" (primitive_type "char") (pointer_declarator "*pcVar7" (* "*") (identifier "pcVar7")) (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "int iVar9;" (primitive_type "int") (identifier "iVar9") (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "undefined1 *puVar11;" (type_identifier "undefined1") (pointer_declarator "*puVar11" (* "*") (identifier "puVar11")) (; ";")) (declaration "int iVar12;" (primitive_type "int") (identifier "iVar12") (; ";")) (declaration "uint uVar13;" (type_identifier "uint") (identifier "uVar13") (; ";")) (declaration "uint uVar14;" (type_identifier "uint") (identifier "uVar14") (; ";")) (declaration "undefined1 *puVar15;" (type_identifier "undefined1") (pointer_declarator "*puVar15" (* "*") (identifier "puVar15")) (; ";")) (declaration "int iVar16;" (primitive_type "int") (identifier "iVar16") (; ";")) (declaration "byte *pbVar17;" (type_identifier "byte") (pointer_declarator "*pbVar17" (* "*") (identifier "pbVar17")) (; ";")) (declaration "undefined4 *puVar18;" (type_identifier "undefined4") (pointer_declarator "*puVar18" (* "*") (identifier "puVar18")) (; ";")) (declaration "byte *pbVar19;" (type_identifier "byte") (pointer_declarator "*pbVar19" (* "*") (identifier "pbVar19")) (; ";")) (declaration "byte *pbVar20;" (type_identifier "byte") (pointer_declarator "*pbVar20" (* "*") (identifier "pbVar20")) (; ";")) (declaration "int *piVar21;" (primitive_type "int") (pointer_declarator "*piVar21" (* "*") (identifier "piVar21")) (; ";")) (declaration "undefined4 *puVar22;" (type_identifier "undefined4") (pointer_declarator "*puVar22" (* "*") (identifier "puVar22")) (; ";")) (declaration "int *piVar23;" (primitive_type "int") (pointer_declarator "*piVar23" (* "*") (identifier "piVar23")) (; ";")) (declaration "undefined4 *puVar24;" (type_identifier "undefined4") (pointer_declarator "*puVar24" (* "*") (identifier "puVar24")) (; ";")) (declaration "int *piVar25;" (primitive_type "int") (pointer_declarator "*piVar25" (* "*") (identifier "piVar25")) (; ";")) (declaration "uint uVar26;" (type_identifier "uint") (identifier "uVar26") (; ";")) (declaration "int iVar27;" (primitive_type "int") (identifier "iVar27") (; ";")) (declaration "int *piVar28;" (primitive_type "int") (pointer_declarator "*piVar28" (* "*") (identifier "piVar28")) (; ";")) (declaration "int iVar29;" (primitive_type "int") (identifier "iVar29") (; ";")) (declaration "code *pcVar30;" (type_identifier "code") (pointer_declarator "*pcVar30" (* "*") (identifier "pcVar30")) (; ";")) (declaration "undefined8 uVar31;" (type_identifier "undefined8") (identifier "uVar31") (; ";")) (declaration "byte *local_1ec;" (type_identifier "byte") (pointer_declarator "*local_1ec" (* "*") (identifier "local_1ec")) (; ";")) (declaration "undefined4 local_1e8;" (type_identifier "undefined4") (identifier "local_1e8") (; ";")) (declaration "undefined4 local_1e4;" (type_identifier "undefined4") (identifier "local_1e4") (; ";")) (declaration "int local_1e0;" (primitive_type "int") (identifier "local_1e0") (; ";")) (declaration "undefined4 local_1dc [2];" (type_identifier "undefined4") (array_declarator "local_1dc [2]" (identifier "local_1dc") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined4 local_1d4;" (type_identifier "undefined4") (identifier "local_1d4") (; ";")) (declaration "undefined4 local_1d0;" (type_identifier "undefined4") (identifier "local_1d0") (; ";")) (declaration "undefined4 local_1cc;" (type_identifier "undefined4") (identifier "local_1cc") (; ";")) (declaration "undefined4 local_1b4;" (type_identifier "undefined4") (identifier "local_1b4") (; ";")) (declaration "undefined1 auStack_1a8 [72];" (type_identifier "undefined1") (array_declarator "auStack_1a8 [72]" (identifier "auStack_1a8") ([ "[") (number_literal "72") (] "]")) (; ";")) (declaration "undefined4 local_160;" (type_identifier "undefined4") (identifier "local_160") (; ";")) (declaration "undefined4 local_104;" (type_identifier "undefined4") (identifier "local_104") (; ";")) (declaration "undefined4 local_100;" (type_identifier "undefined4") (identifier "local_100") (; ";")) (declaration "undefined4 local_fc;" (type_identifier "undefined4") (identifier "local_fc") (; ";")) (declaration "undefined4 *local_f8;" (type_identifier "undefined4") (pointer_declarator "*local_f8" (* "*") (identifier "local_f8")) (; ";")) (declaration "undefined4 local_f4;" (type_identifier "undefined4") (identifier "local_f4") (; ";")) (declaration "undefined2 local_f0;" (type_identifier "undefined2") (identifier "local_f0") (; ";")) (declaration "undefined1 local_ee;" (type_identifier "undefined1") (identifier "local_ee") (; ";")) (declaration "byte *local_c4;" (type_identifier "byte") (pointer_declarator "*local_c4" (* "*") (identifier "local_c4")) (; ";")) (declaration "undefined4 uStack_c0;" (type_identifier "undefined4") (identifier "uStack_c0") (; ";")) (declaration "int local_74;" (primitive_type "int") (identifier "local_74") (; ";")) (declaration "int *local_70;" (primitive_type "int") (pointer_declarator "*local_70" (* "*") (identifier "local_70")) (; ";")) (declaration "uint local_68;" (type_identifier "uint") (identifier "local_68") (; ";")) (declaration "int local_60;" (primitive_type "int") (identifier "local_60") (; ";")) (declaration "undefined4 local_5c;" (type_identifier "undefined4") (identifier "local_5c") (; ";")) (declaration "undefined1 auStack_3c [4];" (type_identifier "undefined1") (array_declarator "auStack_3c [4]" (identifier "auStack_3c") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "byte *local_38;" (type_identifier "byte") (pointer_declarator "*local_38" (* "*") (identifier "local_38")) (; ";")) (declaration "int local_34;" (primitive_type "int") (identifier "local_34") (; ";")) (declaration "undefined1 local_30;" (type_identifier "undefined1") (identifier "local_30") (; ";")) (declaration "undefined1 local_2f;" (type_identifier "undefined1") (identifier "local_2f") (; ";")) (declaration "undefined4 local_2c;" (type_identifier "undefined4") (identifier "local_2c") (; ";")) (expression_statement "local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;" (assignment_expression "local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c" (identifier "local_2c") (= "=") (pointer_expression "*(undefined4 *)PTR___stack_chk_guard_0012b14c" (* "*") (cast_expression "(undefined4 *)PTR___stack_chk_guard_0012b14c" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_0012b14c")))) (; ";")) (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c)" (identifier "uVar4") (= "=") (call_expression "(*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a30c)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a30c" (* "*") (cast_expression "(code *)PTR_FUN_0012a30c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a30c"))) () ")")) (argument_list "(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c)" (( "(") (identifier "param_2") (, ",") (binary_expression "PTR_UINT_0012a18c + -0x1760" (identifier "PTR_UINT_0012a18c") (+ "+") (number_literal "-0x1760")) (, ",") (identifier "auStack_3c") (, ",") (identifier "auStack_3c") () ")")))) (; ";")) (if_statement "if ((uVar4 & 7) == 0) {\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }" (if "if") (parenthesized_expression "((uVar4 & 7) == 0)" (( "(") (binary_expression "(uVar4 & 7) == 0" (parenthesized_expression "(uVar4 & 7)" (( "(") (binary_expression "uVar4 & 7" (identifier "uVar4") (& "&") (number_literal "7")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);\n  }" ({ "{") (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c)" (identifier "uVar4") (= "=") (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a1e4" (* "*") (cast_expression "(code *)PTR_FUN_0012a1e4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a1e4"))) () ")")) (argument_list "(PTR_FUN_0012a1a8 + -0x4f3c)" (( "(") (binary_expression "PTR_FUN_0012a1a8 + -0x4f3c" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "-0x4f3c")) () ")")))) (; ";")) (} "}"))) (if_statement "if ((uVar4 & 8) != 0) {\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }" (if "if") (parenthesized_expression "((uVar4 & 8) != 0)" (( "(") (binary_expression "(uVar4 & 8) != 0" (parenthesized_expression "(uVar4 & 8)" (( "(") (binary_expression "uVar4 & 8" (identifier "uVar4") (& "&") (number_literal "8")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    puVar22 = (undefined4 *)(uint)*local_38;\n    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;\n    if (local_38[1] == 0) goto LAB_000b2678;\n    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);\n  }" ({ "{") (expression_statement "puVar22 = (undefined4 *)(uint)*local_38;" (assignment_expression "puVar22 = (undefined4 *)(uint)*local_38" (identifier "puVar22") (= "=") (binary_expression "(undefined4 *)(uint)*local_38" (cast_expression "(undefined4 *)(uint)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")"))) (* "*") (identifier "local_38"))) (; ";")) (if_statement "if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;" (if "if") (parenthesized_expression "(puVar22 == (undefined4 *)0x0)" (( "(") (binary_expression "puVar22 == (undefined4 *)0x0" (identifier "puVar22") (== "==") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000b2650;" (goto "goto") (statement_identifier "LAB_000b2650") (; ";"))) (if_statement "if (local_38[1] == 0) goto LAB_000b2678;" (if "if") (parenthesized_expression "(local_38[1] == 0)" (( "(") (binary_expression "local_38[1] == 0" (subscript_expression "local_38[1]" (identifier "local_38") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b2678;" (goto "goto") (statement_identifier "LAB_000b2678") (; ";"))) (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c)" (identifier "uVar4") (= "=") (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a1e4" (* "*") (cast_expression "(code *)PTR_FUN_0012a1e4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a1e4"))) () ")")) (argument_list "(PTR_FUN_0012a1a8 + -0x4f0c)" (( "(") (binary_expression "PTR_FUN_0012a1a8 + -0x4f0c" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "-0x4f0c")) () ")")))) (; ";")) (} "}"))) (if_statement "if ((uVar4 & 4) == 0) {\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }\n  else {\n    puVar22 = (undefined4 *)0x9;\n  }" (if "if") (parenthesized_expression "((uVar4 & 4) == 0)" (( "(") (binary_expression "(uVar4 & 4) == 0" (parenthesized_expression "(uVar4 & 4)" (( "(") (binary_expression "uVar4 & 4" (identifier "uVar4") (& "&") (number_literal "4")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    puVar22 = (undefined4 *)0x9;\n    if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }\n  }" ({ "{") (expression_statement "puVar22 = (undefined4 *)0x9;" (assignment_expression "puVar22 = (undefined4 *)0x9" (identifier "puVar22") (= "=") (cast_expression "(undefined4 *)0x9" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x9"))) (; ";")) (if_statement "if ((uVar4 & 0x10) != 0) {\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }" (if "if") (parenthesized_expression "((uVar4 & 0x10) != 0)" (( "(") (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" (( "(") (binary_expression "uVar4 & 0x10" (identifier "uVar4") (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);\n      if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }\n    }" ({ "{") (do_statement "do {\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      } while ((uVar4 & 0x10) != 0);" (do "do") (compound_statement "{\n        do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);\n        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;\n      }" ({ "{") (do_statement "do {\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        } while ((uVar4 & 0x10) != 0);" (do "do") (compound_statement "{\n          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);\nLAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;\n        }" ({ "{") (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f)" (identifier "uVar4") (= "=") (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a1e4" (* "*") (cast_expression "(code *)PTR_FUN_0012a1e4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a1e4"))) () ")")) (argument_list "(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f)" (( "(") (binary_expression "PTR_FUN_0012a1a8 + -0x4ee0" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "-0x4ee0")) (, ",") (binary_expression "PTR_FUN_0012a1a8 + 0x727f" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "0x727f")) () ")")))) (; ";")) (labeled_statement "LAB_000b2650:\n          if ((uVar4 & 4) != 0) goto LAB_000b204c;" (statement_identifier "LAB_000b2650") (: ":") (if_statement "if ((uVar4 & 4) != 0) goto LAB_000b204c;" (if "if") (parenthesized_expression "((uVar4 & 4) != 0)" (( "(") (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" (( "(") (binary_expression "uVar4 & 4" (identifier "uVar4") (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b204c;" (goto "goto") (statement_identifier "LAB_000b204c") (; ";")))) (} "}")) (while "while") (parenthesized_expression "((uVar4 & 0x10) != 0)" (( "(") (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" (( "(") (binary_expression "uVar4 & 0x10" (identifier "uVar4") (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")")) (; ";")) (expression_statement "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);" (assignment_expression "uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f)" (identifier "uVar4") (= "=") (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a1e4" (* "*") (cast_expression "(code *)PTR_FUN_0012a1e4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a1e4"))) () ")")) (argument_list "(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f)" (( "(") (binary_expression "PTR_FUN_0012a1a8 + -0x4eb0" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "-0x4eb0")) (, ",") (binary_expression "PTR_FUN_0012a1a8 + 0x727f" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "0x727f")) () ")")))) (; ";")) (labeled_statement "LAB_000b2678:\n        if ((uVar4 & 4) != 0) goto LAB_000b204c;" (statement_identifier "LAB_000b2678") (: ":") (if_statement "if ((uVar4 & 4) != 0) goto LAB_000b204c;" (if "if") (parenthesized_expression "((uVar4 & 4) != 0)" (( "(") (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" (( "(") (binary_expression "uVar4 & 4" (identifier "uVar4") (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b204c;" (goto "goto") (statement_identifier "LAB_000b204c") (; ";")))) (} "}")) (while "while") (parenthesized_expression "((uVar4 & 0x10) != 0)" (( "(") (binary_expression "(uVar4 & 0x10) != 0" (parenthesized_expression "(uVar4 & 0x10)" (( "(") (binary_expression "uVar4 & 0x10" (identifier "uVar4") (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")")) (; ";")) (if_statement "if (puVar22 != (undefined4 *)0x9) {\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }" (if "if") (parenthesized_expression "(puVar22 != (undefined4 *)0x9)" (( "(") (binary_expression "puVar22 != (undefined4 *)0x9" (identifier "puVar22") (!= "!=") (cast_expression "(undefined4 *)0x9" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x9"))) () ")")) (compound_statement "{\n        puVar6 = PTR_FUN_0012a1a8 + 0x727f;\n        puVar5 = PTR_FUN_0012a1e4;\n        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);\n        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);\n        local_c4 = (byte *)*puVar24;\n        local_1e0 = 0;\n        uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);\n        iVar12 = **(int **)(puVar5 + 0x78a44);\n        if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }\n        iVar8 = -1;\n        if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }\nLAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);\n        pbVar19 = (byte *)*puVar18;\n        uVar13 = uVar4 & 10;\n        pbVar20 = pbVar19;\n        uVar26 = uVar4;\n        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;\n        pbVar17 = (byte *)(uint)*pbVar19;\n        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;\n        pbVar20 = pbVar19 + 1;\n        pbVar19 = (byte *)puVar18[1];\n        puVar18 = puVar18 + 1;\n        if (uVar13 != 0) goto LAB_000b2b34;\n        uVar26 = uVar4 | 2;\n        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;\n        uVar14 = uVar4 & 0x10;\n        local_1ec = pbVar19;\nLAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);\n        uVar4 = uVar26;\n        if (uVar14 == 0) goto LAB_000b2850;\nLAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);\n        local_1dc[0] = local_160;\n        pbVar19 = pbVar20;\n        do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );\n      }" ({ "{") (expression_statement "puVar6 = PTR_FUN_0012a1a8 + 0x727f;" (assignment_expression "puVar6 = PTR_FUN_0012a1a8 + 0x727f" (identifier "puVar6") (= "=") (binary_expression "PTR_FUN_0012a1a8 + 0x727f" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "0x727f"))) (; ";")) (expression_statement "puVar5 = PTR_FUN_0012a1e4;" (assignment_expression "puVar5 = PTR_FUN_0012a1e4" (identifier "puVar5") (= "=") (identifier "PTR_FUN_0012a1e4")) (; ";")) (expression_statement "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);" (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a1e4" (* "*") (cast_expression "(code *)PTR_FUN_0012a1e4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a1e4"))) () ")")) (argument_list "(PTR_FUN_0012a1a8 + -0x4eb0)" (( "(") (binary_expression "PTR_FUN_0012a1a8 + -0x4eb0" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "-0x4eb0")) () ")"))) (; ";")) (expression_statement "puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);" (assignment_expression "puVar24 = *(undefined4 **)(puVar5 + 0x78aa4)" (identifier "puVar24") (= "=") (pointer_expression "*(undefined4 **)(puVar5 + 0x78aa4)" (* "*") (cast_expression "(undefined4 **)(puVar5 + 0x78aa4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x78aa4)" (( "(") (binary_expression "puVar5 + 0x78aa4" (identifier "puVar5") (+ "+") (number_literal "0x78aa4")) () ")"))))) (; ";")) (expression_statement "local_c4 = (byte *)*puVar24;" (assignment_expression "local_c4 = (byte *)*puVar24" (identifier "local_c4") (= "=") (cast_expression "(byte *)*puVar24" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar24" (* "*") (identifier "puVar24")))) (; ";")) (expression_statement "local_1e0 = 0;" (assignment_expression "local_1e0 = 0" (identifier "local_1e0") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8);" (assignment_expression "uVar4 = (**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8)" (identifier "uVar4") (= "=") (call_expression "(**(code **)(puVar5 + 0x77c40))\n                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8)" (parenthesized_expression "(**(code **)(puVar5 + 0x77c40))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x77c40)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x77c40)" (* "*") (cast_expression "(code **)(puVar5 + 0x77c40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x77c40)" (( "(") (binary_expression "puVar5 + 0x77c40" (identifier "puVar5") (+ "+") (number_literal "0x77c40")) () ")"))))) () ")")) (argument_list "(puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,\n                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,\n                           &local_1e0,&local_1e8)" (( "(") (identifier "puVar6") (, ",") (binary_expression "*(int *)(puVar5 + 0x77ae4) + -0x1730" (pointer_expression "*(int *)(puVar5 + 0x77ae4)" (* "*") (cast_expression "(int *)(puVar5 + 0x77ae4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77ae4)" (( "(") (binary_expression "puVar5 + 0x77ae4" (identifier "puVar5") (+ "+") (number_literal "0x77ae4")) () ")")))) (+ "+") (number_literal "-0x1730")) (, ",") (binary_expression "*(int *)(puVar5 + 0x77b00) + 0x72ba" (pointer_expression "*(int *)(puVar5 + 0x77b00)" (* "*") (cast_expression "(int *)(puVar5 + 0x77b00)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77b00)" (( "(") (binary_expression "puVar5 + 0x77b00" (identifier "puVar5") (+ "+") (number_literal "0x77b00")) () ")")))) (+ "+") (number_literal "0x72ba")) (, ",") (pointer_expression "&local_1ec" (& "&") (identifier "local_1ec")) (, ",") (pointer_expression "&local_1ec" (& "&") (identifier "local_1ec")) (, ",") (pointer_expression "&local_1e4" (& "&") (identifier "local_1e4")) (, ",") (pointer_expression "&local_1e0" (& "&") (identifier "local_1e0")) (, ",") (pointer_expression "&local_1e8" (& "&") (identifier "local_1e8")) () ")")))) (; ";")) (expression_statement "iVar12 = **(int **)(puVar5 + 0x78a44);" (assignment_expression "iVar12 = **(int **)(puVar5 + 0x78a44)" (identifier "iVar12") (= "=") (pointer_expression "**(int **)(puVar5 + 0x78a44)" (* "*") (pointer_expression "*(int **)(puVar5 + 0x78a44)" (* "*") (cast_expression "(int **)(puVar5 + 0x78a44)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x78a44)" (( "(") (binary_expression "puVar5 + 0x78a44" (identifier "puVar5") (+ "+") (number_literal "0x78a44")) () ")")))))) (; ";")) (if_statement "if ((uVar4 & 4) != 0) {\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }" (if "if") (parenthesized_expression "((uVar4 & 4) != 0)" (( "(") (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" (( "(") (binary_expression "uVar4 & 4" (identifier "uVar4") (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);\n        }" ({ "{") (expression_statement "(**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);" (call_expression "(**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48)" (parenthesized_expression "(**(code **)(puVar5 + 0x78734))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x78734)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x78734)" (* "*") (cast_expression "(code **)(puVar5 + 0x78734)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x78734)" (( "(") (binary_expression "puVar5 + 0x78734" (identifier "puVar5") (+ "+") (number_literal "0x78734")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar5 + 0x77b00) + -0x4e48)" (( "(") (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e48" (pointer_expression "*(int *)(puVar5 + 0x77b00)" (* "*") (cast_expression "(int *)(puVar5 + 0x77b00)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77b00)" (( "(") (binary_expression "puVar5 + 0x77b00" (identifier "puVar5") (+ "+") (number_literal "0x77b00")) () ")")))) (+ "+") (number_literal "-0x4e48")) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar8 = -1;" (assignment_expression "iVar8 = -1" (identifier "iVar8") (= "=") (number_literal "-1")) (; ";")) (if_statement "if ((uVar4 & 0x20) != 0) {\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }" (if "if") (parenthesized_expression "((uVar4 & 0x20) != 0)" (( "(") (binary_expression "(uVar4 & 0x20) != 0" (parenthesized_expression "(uVar4 & 0x20)" (( "(") (binary_expression "uVar4 & 0x20" (identifier "uVar4") (& "&") (number_literal "0x20")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }\n          iVar8 = 0;\n        }" ({ "{") (if_statement "if (local_1e0 != 0) {\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }" (if "if") (parenthesized_expression "(local_1e0 != 0)" (( "(") (binary_expression "local_1e0 != 0" (identifier "local_1e0") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);\n            if (-1 < iVar8) goto LAB_000b276c;\n            (**(code **)(puVar5 + 0x77b34))();\n          }" ({ "{") (expression_statement "iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);" (assignment_expression "iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e)" (parenthesized_expression "(**(code **)(puVar5 + 0x77e64))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x77e64)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x77e64)" (* "*") (cast_expression "(code **)(puVar5 + 0x77e64)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x77e64)" (( "(") (binary_expression "puVar5 + 0x77e64" (identifier "puVar5") (+ "+") (number_literal "0x77e64")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar5 + 0x77b00) + 0x729e)" (( "(") (binary_expression "*(int *)(puVar5 + 0x77b00) + 0x729e" (pointer_expression "*(int *)(puVar5 + 0x77b00)" (* "*") (cast_expression "(int *)(puVar5 + 0x77b00)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77b00)" (( "(") (binary_expression "puVar5 + 0x77b00" (identifier "puVar5") (+ "+") (number_literal "0x77b00")) () ")")))) (+ "+") (number_literal "0x729e")) () ")")))) (; ";")) (if_statement "if (-1 < iVar8) goto LAB_000b276c;" (if "if") (parenthesized_expression "(-1 < iVar8)" (( "(") (binary_expression "-1 < iVar8" (number_literal "-1") (< "<") (identifier "iVar8")) () ")")) (goto_statement "goto LAB_000b276c;" (goto "goto") (statement_identifier "LAB_000b276c") (; ";"))) (expression_statement "(**(code **)(puVar5 + 0x77b34))();" (call_expression "(**(code **)(puVar5 + 0x77b34))()" (parenthesized_expression "(**(code **)(puVar5 + 0x77b34))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x77b34)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x77b34)" (* "*") (cast_expression "(code **)(puVar5 + 0x77b34)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x77b34)" (( "(") (binary_expression "puVar5 + 0x77b34" (identifier "puVar5") (+ "+") (number_literal "0x77b34")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" (identifier "iVar8") (= "=") (number_literal "0")) (; ";")) (} "}"))) (labeled_statement "LAB_000b276c:\n        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);" (statement_identifier "LAB_000b276c") (: ":") (expression_statement "puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);" (assignment_expression "puVar18 = (undefined4 *)(puVar6 + iVar12 * 4)" (identifier "puVar18") (= "=") (cast_expression "(undefined4 *)(puVar6 + iVar12 * 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + iVar12 * 4)" (( "(") (binary_expression "puVar6 + iVar12 * 4" (identifier "puVar6") (+ "+") (binary_expression "iVar12 * 4" (identifier "iVar12") (* "*") (number_literal "4"))) () ")")))) (; ";"))) (expression_statement "pbVar19 = (byte *)*puVar18;" (assignment_expression "pbVar19 = (byte *)*puVar18" (identifier "pbVar19") (= "=") (cast_expression "(byte *)*puVar18" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar18" (* "*") (identifier "puVar18")))) (; ";")) (expression_statement "uVar13 = uVar4 & 10;" (assignment_expression "uVar13 = uVar4 & 10" (identifier "uVar13") (= "=") (binary_expression "uVar4 & 10" (identifier "uVar4") (& "&") (number_literal "10"))) (; ";")) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" (identifier "pbVar20") (= "=") (identifier "pbVar19")) (; ";")) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" (identifier "uVar26") (= "=") (identifier "uVar4")) (; ";")) (if_statement "if (pbVar19 == (byte *)0x0) goto LAB_000b2834;" (if "if") (parenthesized_expression "(pbVar19 == (byte *)0x0)" (( "(") (binary_expression "pbVar19 == (byte *)0x0" (identifier "pbVar19") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000b2834;" (goto "goto") (statement_identifier "LAB_000b2834") (; ";"))) (expression_statement "pbVar17 = (byte *)(uint)*pbVar19;" (assignment_expression "pbVar17 = (byte *)(uint)*pbVar19" (identifier "pbVar17") (= "=") (binary_expression "(byte *)(uint)*pbVar19" (cast_expression "(byte *)(uint)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")"))) (* "*") (identifier "pbVar19"))) (; ";")) (if_statement "if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;" (if "if") (parenthesized_expression "(pbVar17 != &DAT_0000002b)" (( "(") (binary_expression "pbVar17 != &DAT_0000002b" (identifier "pbVar17") (!= "!=") (pointer_expression "&DAT_0000002b" (& "&") (identifier "DAT_0000002b"))) () ")")) (goto_statement "goto LAB_000b2a78;" (goto "goto") (statement_identifier "LAB_000b2a78") (; ";"))) (expression_statement "pbVar20 = pbVar19 + 1;" (assignment_expression "pbVar20 = pbVar19 + 1" (identifier "pbVar20") (= "=") (binary_expression "pbVar19 + 1" (identifier "pbVar19") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar19 = (byte *)puVar18[1];" (assignment_expression "pbVar19 = (byte *)puVar18[1]" (identifier "pbVar19") (= "=") (cast_expression "(byte *)puVar18[1]" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar18[1]" (identifier "puVar18") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "puVar18 = puVar18 + 1;" (assignment_expression "puVar18 = puVar18 + 1" (identifier "puVar18") (= "=") (binary_expression "puVar18 + 1" (identifier "puVar18") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (uVar13 != 0) goto LAB_000b2b34;" (if "if") (parenthesized_expression "(uVar13 != 0)" (( "(") (binary_expression "uVar13 != 0" (identifier "uVar13") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b2b34;" (goto "goto") (statement_identifier "LAB_000b2b34") (; ";"))) (expression_statement "uVar26 = uVar4 | 2;" (assignment_expression "uVar26 = uVar4 | 2" (identifier "uVar26") (= "=") (binary_expression "uVar4 | 2" (identifier "uVar4") (| "|") (number_literal "2"))) (; ";")) (if_statement "if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;" (if "if") (parenthesized_expression "(pbVar19 != (byte *)0x0)" (( "(") (binary_expression "pbVar19 != (byte *)0x0" (identifier "pbVar19") (!= "!=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000b2a90;" (goto "goto") (statement_identifier "LAB_000b2a90") (; ";"))) (expression_statement "uVar14 = uVar4 & 0x10;" (assignment_expression "uVar14 = uVar4 & 0x10" (identifier "uVar14") (= "=") (binary_expression "uVar4 & 0x10" (identifier "uVar4") (& "&") (number_literal "0x10"))) (; ";")) (expression_statement "local_1ec = pbVar19;" (assignment_expression "local_1ec = pbVar19" (identifier "local_1ec") (= "=") (identifier "pbVar19")) (; ";")) (labeled_statement "LAB_000b27b0:\n        pcVar30 = *(code **)(puVar5 + 0x78a84);" (statement_identifier "LAB_000b27b0") (: ":") (expression_statement "pcVar30 = *(code **)(puVar5 + 0x78a84);" (assignment_expression "pcVar30 = *(code **)(puVar5 + 0x78a84)" (identifier "pcVar30") (= "=") (pointer_expression "*(code **)(puVar5 + 0x78a84)" (* "*") (cast_expression "(code **)(puVar5 + 0x78a84)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x78a84)" (( "(") (binary_expression "puVar5 + 0x78a84" (identifier "puVar5") (+ "+") (number_literal "0x78a84")) () ")"))))) (; ";"))) (expression_statement "uVar4 = uVar26;" (assignment_expression "uVar4 = uVar26" (identifier "uVar4") (= "=") (identifier "uVar26")) (; ";")) (if_statement "if (uVar14 == 0) goto LAB_000b2850;" (if "if") (parenthesized_expression "(uVar14 == 0)" (( "(") (binary_expression "uVar14 == 0" (identifier "uVar14") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b2850;" (goto "goto") (statement_identifier "LAB_000b2850") (; ";"))) (labeled_statement "LAB_000b27b8:\n        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);" (statement_identifier "LAB_000b27b8") (: ":") (expression_statement "(**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);" (call_expression "(**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8)" (parenthesized_expression "(**(code **)(puVar5 + 0x782a8))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x782a8)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x782a8)" (* "*") (cast_expression "(code **)(puVar5 + 0x782a8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x782a8)" (( "(") (binary_expression "puVar5 + 0x782a8" (identifier "puVar5") (+ "+") (number_literal "0x782a8")) () ")"))))) () ")")) (argument_list "(local_1e4,auStack_1a8)" (( "(") (identifier "local_1e4") (, ",") (identifier "auStack_1a8") () ")"))) (; ";"))) (expression_statement "local_1dc[0] = local_160;" (assignment_expression "local_1dc[0] = local_160" (subscript_expression "local_1dc[0]" (identifier "local_1dc") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "local_160")) (; ";")) (expression_statement "pbVar19 = pbVar20;" (assignment_expression "pbVar19 = pbVar20" (identifier "pbVar19") (= "=") (identifier "pbVar20")) (; ";")) (do_statement "do {\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        } while( true );" (do "do") (compound_statement "{\n          puVar22 = local_1dc;\n          puVar18 = &local_1d4;\n          (**(code **)(puVar5 + 0x789dc))(puVar22);\n          if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }\n          local_1d4 = 0;\n          local_1d0 = 0;\n          local_1cc = 0;\n          if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }\n          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);\n          if (iVar12 != 0) goto LAB_000b2874;\n          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);\n          pbVar20 = pbVar19;\n          uVar26 = uVar4;\nLAB_000b2834:\n          uVar14 = uVar26 & 0x10;\n          if (uVar13 != 0) goto LAB_000b27b0;\n          uVar4 = uVar26 | 2;\n          local_1ec = (byte *)0x0;\n          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;\n          pcVar30 = *(code **)(puVar5 + 0x78a84);\nLAB_000b2850:\n          (*pcVar30)(local_1dc);\n          pbVar19 = pbVar20;\n        }" ({ "{") (expression_statement "puVar22 = local_1dc;" (assignment_expression "puVar22 = local_1dc" (identifier "puVar22") (= "=") (identifier "local_1dc")) (; ";")) (expression_statement "puVar18 = &local_1d4;" (assignment_expression "puVar18 = &local_1d4" (identifier "puVar18") (= "=") (pointer_expression "&local_1d4" (& "&") (identifier "local_1d4"))) (; ";")) (expression_statement "(**(code **)(puVar5 + 0x789dc))(puVar22);" (call_expression "(**(code **)(puVar5 + 0x789dc))(puVar22)" (parenthesized_expression "(**(code **)(puVar5 + 0x789dc))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x789dc)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x789dc)" (* "*") (cast_expression "(code **)(puVar5 + 0x789dc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x789dc)" (( "(") (binary_expression "puVar5 + 0x789dc" (identifier "puVar5") (+ "+") (number_literal "0x789dc")) () ")"))))) () ")")) (argument_list "(puVar22)" (( "(") (identifier "puVar22") () ")"))) (; ";")) (if_statement "if (local_1ec == (byte *)0x0) {\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }" (if "if") (parenthesized_expression "(local_1ec == (byte *)0x0)" (( "(") (binary_expression "local_1ec == (byte *)0x0" (identifier "local_1ec") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\nLAB_000b28d0:\n            uVar26 = uVar4;\n            if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }\n            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);\n            if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }\n            puVar18 = (undefined4 *)0x400;\n            (**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);\nLAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));\n            if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }\n            pbVar17 = local_c4;\n            uVar13 = (**(code **)(puVar5 + 0x78a20))();\nLAB_000b2a78:\n            pbVar20 = pbVar19;\n            uVar26 = uVar4;\n            if (uVar13 != 0) goto LAB_000b2b3c;\n            pbVar20 = (byte *)0x0;\n            uVar26 = uVar4 | 2;\nLAB_000b2a90:\n            local_1ec = pbVar19;\n            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);\n            pbVar17 = pbVar19 + iVar12;\n            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);\n            puVar22 = puVar18;\n            if (*pbVar17 != 0) goto LAB_000b2b48;\n            uVar13 = iVar12 - 8;\n            uVar4 = uVar13 & 1;\n            if (uVar13 < 5) goto LAB_000b2ad4;\nLAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);\n            do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );\n          }" ({ "{") (labeled_statement "LAB_000b28d0:\n            uVar26 = uVar4;" (statement_identifier "LAB_000b28d0") (: ":") (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" (identifier "uVar26") (= "=") (identifier "uVar4")) (; ";"))) (if_statement "if (pbVar19 == (byte *)0x0) {\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }\n            else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" (if "if") (parenthesized_expression "(pbVar19 == (byte *)0x0)" (( "(") (binary_expression "pbVar19 == (byte *)0x0" (identifier "pbVar19") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n              iVar12 = *(int *)(puVar5 + 0x77b00);\n              if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }\n              iVar9 = *(int *)(puVar5 + 0x77b00);\n              if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);\n            }" ({ "{") (expression_statement "iVar12 = *(int *)(puVar5 + 0x77b00);" (assignment_expression "iVar12 = *(int *)(puVar5 + 0x77b00)" (identifier "iVar12") (= "=") (pointer_expression "*(int *)(puVar5 + 0x77b00)" (* "*") (cast_expression "(int *)(puVar5 + 0x77b00)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77b00)" (( "(") (binary_expression "puVar5 + 0x77b00" (identifier "puVar5") (+ "+") (number_literal "0x77b00")) () ")"))))) (; ";")) (if_statement "if (iVar8 != -1) {\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }" (if "if") (parenthesized_expression "(iVar8 != -1)" (( "(") (binary_expression "iVar8 != -1" (identifier "iVar8") (!= "!=") (number_literal "-1")) () ")")) (compound_statement "{\n                iVar9 = iVar8 * 3;\n                iVar10 = iVar9 + 8;\n                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);\n                local_104 = *(undefined4 *)(iVar12 + -0x4e24);\n                local_100 = *(undefined4 *)(iVar12 + -20000);\n                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);\n                local_f8 = puVar18;\n                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);\n                iVar12 = iVar10;\n                if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }\nLAB_000b29b4:\n                pbVar19 = (byte *)&local_104;\n                *(undefined1 *)((int)&local_104 + iVar12) = 0;\n                goto LAB_000b29c0;\n              }" ({ "{") (expression_statement "iVar9 = iVar8 * 3;" (assignment_expression "iVar9 = iVar8 * 3" (identifier "iVar9") (= "=") (binary_expression "iVar8 * 3" (identifier "iVar8") (* "*") (number_literal "3"))) (; ";")) (expression_statement "iVar10 = iVar9 + 8;" (assignment_expression "iVar10 = iVar9 + 8" (identifier "iVar10") (= "=") (binary_expression "iVar9 + 8" (identifier "iVar9") (+ "+") (number_literal "8"))) (; ";")) (expression_statement "puVar18 = *(undefined4 **)(iVar12 + -0x4e18);" (assignment_expression "puVar18 = *(undefined4 **)(iVar12 + -0x4e18)" (identifier "puVar18") (= "=") (pointer_expression "*(undefined4 **)(iVar12 + -0x4e18)" (* "*") (cast_expression "(undefined4 **)(iVar12 + -0x4e18)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar12 + -0x4e18)" (( "(") (binary_expression "iVar12 + -0x4e18" (identifier "iVar12") (+ "+") (number_literal "-0x4e18")) () ")"))))) (; ";")) (expression_statement "local_104 = *(undefined4 *)(iVar12 + -0x4e24);" (assignment_expression "local_104 = *(undefined4 *)(iVar12 + -0x4e24)" (identifier "local_104") (= "=") (pointer_expression "*(undefined4 *)(iVar12 + -0x4e24)" (* "*") (cast_expression "(undefined4 *)(iVar12 + -0x4e24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar12 + -0x4e24)" (( "(") (binary_expression "iVar12 + -0x4e24" (identifier "iVar12") (+ "+") (number_literal "-0x4e24")) () ")"))))) (; ";")) (expression_statement "local_100 = *(undefined4 *)(iVar12 + -20000);" (assignment_expression "local_100 = *(undefined4 *)(iVar12 + -20000)" (identifier "local_100") (= "=") (pointer_expression "*(undefined4 *)(iVar12 + -20000)" (* "*") (cast_expression "(undefined4 *)(iVar12 + -20000)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar12 + -20000)" (( "(") (binary_expression "iVar12 + -20000" (identifier "iVar12") (+ "+") (number_literal "-20000")) () ")"))))) (; ";")) (expression_statement "local_fc = *(undefined4 *)(iVar12 + -0x4e1c);" (assignment_expression "local_fc = *(undefined4 *)(iVar12 + -0x4e1c)" (identifier "local_fc") (= "=") (pointer_expression "*(undefined4 *)(iVar12 + -0x4e1c)" (* "*") (cast_expression "(undefined4 *)(iVar12 + -0x4e1c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar12 + -0x4e1c)" (( "(") (binary_expression "iVar12 + -0x4e1c" (identifier "iVar12") (+ "+") (number_literal "-0x4e1c")) () ")"))))) (; ";")) (expression_statement "local_f8 = puVar18;" (assignment_expression "local_f8 = puVar18" (identifier "local_f8") (= "=") (identifier "puVar18")) (; ";")) (expression_statement "local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);" (assignment_expression "local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_)" (identifier "local_f4") (= "=") (call_expression "CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_)" (identifier "CONCAT22") (argument_list "(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_)" (( "(") (pointer_expression "*(undefined2 *)(iVar12 + -0x4e14)" (* "*") (cast_expression "(undefined2 *)(iVar12 + -0x4e14)" (( "(") (type_descriptor "undefined2 *" (type_identifier "undefined2") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar12 + -0x4e14)" (( "(") (binary_expression "iVar12 + -0x4e14" (identifier "iVar12") (+ "+") (number_literal "-0x4e14")) () ")")))) (, ",") (field_expression "local_f4._2_2_" (identifier "local_f4") (. ".") (field_identifier "_2_2_")) () ")")))) (; ";")) (expression_statement "iVar12 = iVar10;" (assignment_expression "iVar12 = iVar10" (identifier "iVar12") (= "=") (identifier "iVar10")) (; ";")) (if_statement "if (iVar8 != 0) {\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  iVar16 = iVar9 + 9;\n                  iVar12 = iVar9 + 10;\n                  goto LAB_000b2988;\n                }" ({ "{") (expression_statement "iVar16 = iVar9 + 9;" (assignment_expression "iVar16 = iVar9 + 9" (identifier "iVar16") (= "=") (binary_expression "iVar9 + 9" (identifier "iVar9") (+ "+") (number_literal "9"))) (; ";")) (expression_statement "iVar12 = iVar9 + 10;" (assignment_expression "iVar12 = iVar9 + 10" (identifier "iVar12") (= "=") (binary_expression "iVar9 + 10" (identifier "iVar9") (+ "+") (number_literal "10"))) (; ";")) (goto_statement "goto LAB_000b2988;" (goto "goto") (statement_identifier "LAB_000b2988") (; ";")) (} "}"))) (labeled_statement "LAB_000b29b4:\n                pbVar19 = (byte *)&local_104;" (statement_identifier "LAB_000b29b4") (: ":") (expression_statement "pbVar19 = (byte *)&local_104;" (assignment_expression "pbVar19 = (byte *)&local_104" (identifier "pbVar19") (= "=") (cast_expression "(byte *)&local_104" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_104" (& "&") (identifier "local_104")))) (; ";"))) (expression_statement "*(undefined1 *)((int)&local_104 + iVar12) = 0;" (assignment_expression "*(undefined1 *)((int)&local_104 + iVar12) = 0" (pointer_expression "*(undefined1 *)((int)&local_104 + iVar12)" (* "*") (cast_expression "(undefined1 *)((int)&local_104 + iVar12)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&local_104 + iVar12)" (( "(") (binary_expression "(int)&local_104 + iVar12" (cast_expression "(int)&local_104" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_104" (& "&") (identifier "local_104"))) (+ "+") (identifier "iVar12")) () ")")))) (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_000b29c0;" (goto "goto") (statement_identifier "LAB_000b29c0") (; ";")) (} "}"))) (expression_statement "iVar9 = *(int *)(puVar5 + 0x77b00);" (assignment_expression "iVar9 = *(int *)(puVar5 + 0x77b00)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)(puVar5 + 0x77b00)" (* "*") (cast_expression "(int *)(puVar5 + 0x77b00)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77b00)" (( "(") (binary_expression "puVar5 + 0x77b00" (identifier "puVar5") (+ "+") (number_literal "0x77b00")) () ")"))))) (; ";")) (if_statement "if ((uVar4 & 1) != 0) {\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }" (if "if") (parenthesized_expression "((uVar4 & 1) != 0)" (( "(") (binary_expression "(uVar4 & 1) != 0" (parenthesized_expression "(uVar4 & 1)" (( "(") (binary_expression "uVar4 & 1" (identifier "uVar4") (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                iVar12 = 0x18;\n                iVar16 = 0x17;\n                iVar10 = 0x16;\n                local_104 = *(undefined4 *)(iVar9 + -0x4e10);\n                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);\n                local_fc = *(undefined4 *)(iVar9 + -0x4e08);\n                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);\n                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);\n                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);\n                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);\nLAB_000b2988:\n                uVar26 = 0x7a;\n                if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }\n                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);\n                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;\n                *(char *)((int)&local_104 + iVar16) = (char)uVar26;\n                goto LAB_000b29b4;\n              }" ({ "{") (expression_statement "iVar12 = 0x18;" (assignment_expression "iVar12 = 0x18" (identifier "iVar12") (= "=") (number_literal "0x18")) (; ";")) (expression_statement "iVar16 = 0x17;" (assignment_expression "iVar16 = 0x17" (identifier "iVar16") (= "=") (number_literal "0x17")) (; ";")) (expression_statement "iVar10 = 0x16;" (assignment_expression "iVar10 = 0x16" (identifier "iVar10") (= "=") (number_literal "0x16")) (; ";")) (expression_statement "local_104 = *(undefined4 *)(iVar9 + -0x4e10);" (assignment_expression "local_104 = *(undefined4 *)(iVar9 + -0x4e10)" (identifier "local_104") (= "=") (pointer_expression "*(undefined4 *)(iVar9 + -0x4e10)" (* "*") (cast_expression "(undefined4 *)(iVar9 + -0x4e10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + -0x4e10)" (( "(") (binary_expression "iVar9 + -0x4e10" (identifier "iVar9") (+ "+") (number_literal "-0x4e10")) () ")"))))) (; ";")) (expression_statement "local_100 = *(undefined4 *)(iVar9 + -0x4e0c);" (assignment_expression "local_100 = *(undefined4 *)(iVar9 + -0x4e0c)" (identifier "local_100") (= "=") (pointer_expression "*(undefined4 *)(iVar9 + -0x4e0c)" (* "*") (cast_expression "(undefined4 *)(iVar9 + -0x4e0c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + -0x4e0c)" (( "(") (binary_expression "iVar9 + -0x4e0c" (identifier "iVar9") (+ "+") (number_literal "-0x4e0c")) () ")"))))) (; ";")) (expression_statement "local_fc = *(undefined4 *)(iVar9 + -0x4e08);" (assignment_expression "local_fc = *(undefined4 *)(iVar9 + -0x4e08)" (identifier "local_fc") (= "=") (pointer_expression "*(undefined4 *)(iVar9 + -0x4e08)" (* "*") (cast_expression "(undefined4 *)(iVar9 + -0x4e08)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + -0x4e08)" (( "(") (binary_expression "iVar9 + -0x4e08" (identifier "iVar9") (+ "+") (number_literal "-0x4e08")) () ")"))))) (; ";")) (expression_statement "local_f8 = *(undefined4 **)(iVar9 + -0x4e04);" (assignment_expression "local_f8 = *(undefined4 **)(iVar9 + -0x4e04)" (identifier "local_f8") (= "=") (pointer_expression "*(undefined4 **)(iVar9 + -0x4e04)" (* "*") (cast_expression "(undefined4 **)(iVar9 + -0x4e04)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + -0x4e04)" (( "(") (binary_expression "iVar9 + -0x4e04" (identifier "iVar9") (+ "+") (number_literal "-0x4e04")) () ")"))))) (; ";")) (expression_statement "local_f4 = *(undefined4 *)(iVar9 + -0x4e00);" (assignment_expression "local_f4 = *(undefined4 *)(iVar9 + -0x4e00)" (identifier "local_f4") (= "=") (pointer_expression "*(undefined4 *)(iVar9 + -0x4e00)" (* "*") (cast_expression "(undefined4 *)(iVar9 + -0x4e00)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + -0x4e00)" (( "(") (binary_expression "iVar9 + -0x4e00" (identifier "iVar9") (+ "+") (number_literal "-0x4e00")) () ")"))))) (; ";")) (expression_statement "local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);" (assignment_expression "local_f0 = *(undefined2 *)(iVar9 + -0x4dfc)" (identifier "local_f0") (= "=") (pointer_expression "*(undefined2 *)(iVar9 + -0x4dfc)" (* "*") (cast_expression "(undefined2 *)(iVar9 + -0x4dfc)" (( "(") (type_descriptor "undefined2 *" (type_identifier "undefined2") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + -0x4dfc)" (( "(") (binary_expression "iVar9 + -0x4dfc" (identifier "iVar9") (+ "+") (number_literal "-0x4dfc")) () ")"))))) (; ";")) (expression_statement "local_ee = *(undefined1 *)(iVar9 + -0x4dfa);" (assignment_expression "local_ee = *(undefined1 *)(iVar9 + -0x4dfa)" (identifier "local_ee") (= "=") (pointer_expression "*(undefined1 *)(iVar9 + -0x4dfa)" (* "*") (cast_expression "(undefined1 *)(iVar9 + -0x4dfa)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + -0x4dfa)" (( "(") (binary_expression "iVar9 + -0x4dfa" (identifier "iVar9") (+ "+") (number_literal "-0x4dfa")) () ")"))))) (; ";")) (labeled_statement "LAB_000b2988:\n                uVar26 = 0x7a;" (statement_identifier "LAB_000b2988") (: ":") (expression_statement "uVar26 = 0x7a;" (assignment_expression "uVar26 = 0x7a" (identifier "uVar26") (= "=") (number_literal "0x7a")) (; ";"))) (if_statement "if ((uVar4 & 4) != 0) {\n                  uVar26 = 0x5a;\n                }" (if "if") (parenthesized_expression "((uVar4 & 4) != 0)" (( "(") (binary_expression "(uVar4 & 4) != 0" (parenthesized_expression "(uVar4 & 4)" (( "(") (binary_expression "uVar4 & 4" (identifier "uVar4") (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  uVar26 = 0x5a;\n                }" ({ "{") (expression_statement "uVar26 = 0x5a;" (assignment_expression "uVar26 = 0x5a" (identifier "uVar26") (= "=") (number_literal "0x5a")) (; ";")) (} "}"))) (expression_statement "puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);" (assignment_expression "puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16)" (identifier "puVar18") (= "=") (cast_expression "(undefined4 *)((int)&uStack_c0 + iVar16)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&uStack_c0 + iVar16)" (( "(") (binary_expression "(int)&uStack_c0 + iVar16" (cast_expression "(int)&uStack_c0" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&uStack_c0" (& "&") (identifier "uStack_c0"))) (+ "+") (identifier "iVar16")) () ")")))) (; ";")) (expression_statement "*(undefined1 *)((int)&local_104 + iVar10) = 0x25;" (assignment_expression "*(undefined1 *)((int)&local_104 + iVar10) = 0x25" (pointer_expression "*(undefined1 *)((int)&local_104 + iVar10)" (* "*") (cast_expression "(undefined1 *)((int)&local_104 + iVar10)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&local_104 + iVar10)" (( "(") (binary_expression "(int)&local_104 + iVar10" (cast_expression "(int)&local_104" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_104" (& "&") (identifier "local_104"))) (+ "+") (identifier "iVar10")) () ")")))) (= "=") (number_literal "0x25")) (; ";")) (expression_statement "*(char *)((int)&local_104 + iVar16) = (char)uVar26;" (assignment_expression "*(char *)((int)&local_104 + iVar16) = (char)uVar26" (pointer_expression "*(char *)((int)&local_104 + iVar16)" (* "*") (cast_expression "(char *)((int)&local_104 + iVar16)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&local_104 + iVar16)" (( "(") (binary_expression "(int)&local_104 + iVar16" (cast_expression "(int)&local_104" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&local_104" (& "&") (identifier "local_104"))) (+ "+") (identifier "iVar16")) () ")")))) (= "=") (cast_expression "(char)uVar26" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "uVar26"))) (; ";")) (goto_statement "goto LAB_000b29b4;" (goto "goto") (statement_identifier "LAB_000b29b4") (; ";")) (} "}"))) (expression_statement "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);" (assignment_expression "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74)" (identifier "pbVar19") (= "=") (cast_expression "(byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar5 + 0x77b00) + -0x4e74)" (( "(") (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e74" (pointer_expression "*(int *)(puVar5 + 0x77b00)" (* "*") (cast_expression "(int *)(puVar5 + 0x77b00)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77b00)" (( "(") (binary_expression "puVar5 + 0x77b00" (identifier "puVar5") (+ "+") (number_literal "0x77b00")) () ")")))) (+ "+") (number_literal "-0x4e74")) () ")")))) (; ";")) (} "}")) (else_clause "else {\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" (else "else") (compound_statement "{\nLAB_000b29c0:\n              uVar4 = uVar26;\n              if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }\n            }" ({ "{") (labeled_statement "LAB_000b29c0:\n              uVar4 = uVar26;" (statement_identifier "LAB_000b29c0") (: ":") (expression_statement "uVar4 = uVar26;" (assignment_expression "uVar4 = uVar26" (identifier "uVar4") (= "=") (identifier "uVar26")) (; ";"))) (if_statement "if (*pbVar19 == 0) {\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }" (if "if") (parenthesized_expression "(*pbVar19 == 0)" (( "(") (binary_expression "*pbVar19 == 0" (pointer_expression "*pbVar19" (* "*") (identifier "pbVar19")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                **(undefined1 **)(puVar5 + 0x77c9c) = 0;\n                goto LAB_000b29d0;\n              }" ({ "{") (expression_statement "**(undefined1 **)(puVar5 + 0x77c9c) = 0;" (assignment_expression "**(undefined1 **)(puVar5 + 0x77c9c) = 0" (pointer_expression "**(undefined1 **)(puVar5 + 0x77c9c)" (* "*") (pointer_expression "*(undefined1 **)(puVar5 + 0x77c9c)" (* "*") (cast_expression "(undefined1 **)(puVar5 + 0x77c9c)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x77c9c)" (( "(") (binary_expression "puVar5 + 0x77c9c" (identifier "puVar5") (+ "+") (number_literal "0x77c9c")) () ")"))))) (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_000b29d0;" (goto "goto") (statement_identifier "LAB_000b29d0") (; ";")) (} "}"))) (} "}")))) (expression_statement "iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8)" (identifier "iVar12") (= "=") (call_expression "(**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b48))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x77b48)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x77b48)" (* "*") (cast_expression "(code **)(puVar5 + 0x77b48)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x77b48)" (( "(") (binary_expression "puVar5 + 0x77b48" (identifier "puVar5") (+ "+") (number_literal "0x77b48")) () ")"))))) () ")")) (argument_list "(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8)" (( "(") (identifier "pbVar19") (, ",") (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4df8" (pointer_expression "*(int *)(puVar5 + 0x77b00)" (* "*") (cast_expression "(int *)(puVar5 + 0x77b00)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77b00)" (( "(") (binary_expression "puVar5 + 0x77b00" (identifier "puVar5") (+ "+") (number_literal "0x77b00")) () ")")))) (+ "+") (number_literal "-0x4df8")) () ")")))) (; ";")) (if_statement "if (iVar12 != 0) {\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }" (if "if") (parenthesized_expression "(iVar12 != 0)" (( "(") (binary_expression "iVar12 != 0" (identifier "iVar12") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);\n            }" ({ "{") (expression_statement "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);" (assignment_expression "pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c)" (identifier "pbVar19") (= "=") (cast_expression "(byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar5 + 0x77b00) + -0x4e5c)" (( "(") (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e5c" (pointer_expression "*(int *)(puVar5 + 0x77b00)" (* "*") (cast_expression "(int *)(puVar5 + 0x77b00)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77b00)" (( "(") (binary_expression "puVar5 + 0x77b00" (identifier "puVar5") (+ "+") (number_literal "0x77b00")) () ")")))) (+ "+") (number_literal "-0x4e5c")) () ")")))) (; ";")) (} "}"))) (expression_statement "puVar18 = (undefined4 *)0x400;" (assignment_expression "puVar18 = (undefined4 *)0x400" (identifier "puVar18") (= "=") (cast_expression "(undefined4 *)0x400" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x400"))) (; ";")) (expression_statement "(**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);" (call_expression "(**(code **)(puVar5 + 0x788cc))\n                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4)" (parenthesized_expression "(**(code **)(puVar5 + 0x788cc))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x788cc)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x788cc)" (* "*") (cast_expression "(code **)(puVar5 + 0x788cc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x788cc)" (( "(") (binary_expression "puVar5 + 0x788cc" (identifier "puVar5") (+ "+") (number_literal "0x788cc")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4)" (( "(") (pointer_expression "*(undefined4 *)(puVar5 + 0x77c9c)" (* "*") (cast_expression "(undefined4 *)(puVar5 + 0x77c9c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77c9c)" (( "(") (binary_expression "puVar5 + 0x77c9c" (identifier "puVar5") (+ "+") (number_literal "0x77c9c")) () ")")))) (, ",") (number_literal "0x400") (, ",") (identifier "pbVar19") (, ",") (pointer_expression "&local_1d4" (& "&") (identifier "local_1d4")) () ")"))) (; ";")) (labeled_statement "LAB_000b29d0:\n            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));" (statement_identifier "LAB_000b29d0") (: ":") (expression_statement "(**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));" (call_expression "(**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c))" (parenthesized_expression "(**(code **)(puVar5 + 0x7890c))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x7890c)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x7890c)" (* "*") (cast_expression "(code **)(puVar5 + 0x7890c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x7890c)" (( "(") (binary_expression "puVar5 + 0x7890c" (identifier "puVar5") (+ "+") (number_literal "0x7890c")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(puVar5 + 0x77c9c))" (( "(") (pointer_expression "*(undefined4 *)(puVar5 + 0x77c9c)" (* "*") (cast_expression "(undefined4 *)(puVar5 + 0x77c9c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77c9c)" (( "(") (binary_expression "puVar5 + 0x77c9c" (identifier "puVar5") (+ "+") (number_literal "0x77c9c")) () ")")))) () ")"))) (; ";"))) (if_statement "if (local_c4 == (byte *)*puVar24) {\n              return 0;\n            }" (if "if") (parenthesized_expression "(local_c4 == (byte *)*puVar24)" (( "(") (binary_expression "local_c4 == (byte *)*puVar24" (identifier "local_c4") (== "==") (cast_expression "(byte *)*puVar24" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar24" (* "*") (identifier "puVar24")))) () ")")) (compound_statement "{\n              return 0;\n            }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "pbVar17 = local_c4;" (assignment_expression "pbVar17 = local_c4" (identifier "pbVar17") (= "=") (identifier "local_c4")) (; ";")) (expression_statement "uVar13 = (**(code **)(puVar5 + 0x78a20))();" (assignment_expression "uVar13 = (**(code **)(puVar5 + 0x78a20))()" (identifier "uVar13") (= "=") (call_expression "(**(code **)(puVar5 + 0x78a20))()" (parenthesized_expression "(**(code **)(puVar5 + 0x78a20))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x78a20)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x78a20)" (* "*") (cast_expression "(code **)(puVar5 + 0x78a20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x78a20)" (( "(") (binary_expression "puVar5 + 0x78a20" (identifier "puVar5") (+ "+") (number_literal "0x78a20")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (labeled_statement "LAB_000b2a78:\n            pbVar20 = pbVar19;" (statement_identifier "LAB_000b2a78") (: ":") (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" (identifier "pbVar20") (= "=") (identifier "pbVar19")) (; ";"))) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" (identifier "uVar26") (= "=") (identifier "uVar4")) (; ";")) (if_statement "if (uVar13 != 0) goto LAB_000b2b3c;" (if "if") (parenthesized_expression "(uVar13 != 0)" (( "(") (binary_expression "uVar13 != 0" (identifier "uVar13") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b2b3c;" (goto "goto") (statement_identifier "LAB_000b2b3c") (; ";"))) (expression_statement "pbVar20 = (byte *)0x0;" (assignment_expression "pbVar20 = (byte *)0x0" (identifier "pbVar20") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "uVar26 = uVar4 | 2;" (assignment_expression "uVar26 = uVar4 | 2" (identifier "uVar26") (= "=") (binary_expression "uVar4 | 2" (identifier "uVar4") (| "|") (number_literal "2"))) (; ";")) (labeled_statement "LAB_000b2a90:\n            local_1ec = pbVar19;" (statement_identifier "LAB_000b2a90") (: ":") (expression_statement "local_1ec = pbVar19;" (assignment_expression "local_1ec = pbVar19" (identifier "local_1ec") (= "=") (identifier "pbVar19")) (; ";"))) (expression_statement "iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40)" (identifier "iVar12") (= "=") (call_expression "(**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40)" (parenthesized_expression "(**(code **)(puVar5 + 0x785d0))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x785d0)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x785d0)" (* "*") (cast_expression "(code **)(puVar5 + 0x785d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x785d0)" (( "(") (binary_expression "puVar5 + 0x785d0" (identifier "puVar5") (+ "+") (number_literal "0x785d0")) () ")"))))) () ")")) (argument_list "(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40)" (( "(") (identifier "pbVar19") (, ",") (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e40" (pointer_expression "*(int *)(puVar5 + 0x77b00)" (* "*") (cast_expression "(int *)(puVar5 + 0x77b00)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77b00)" (( "(") (binary_expression "puVar5 + 0x77b00" (identifier "puVar5") (+ "+") (number_literal "0x77b00")) () ")")))) (+ "+") (number_literal "-0x4e40")) () ")")))) (; ";")) (expression_statement "pbVar17 = pbVar19 + iVar12;" (assignment_expression "pbVar17 = pbVar19 + iVar12" (identifier "pbVar17") (= "=") (binary_expression "pbVar19 + iVar12" (identifier "pbVar19") (+ "+") (identifier "iVar12"))) (; ";")) (expression_statement "uVar31 = CONCAT44(iVar12,(uint)*pbVar17);" (assignment_expression "uVar31 = CONCAT44(iVar12,(uint)*pbVar17)" (identifier "uVar31") (= "=") (call_expression "CONCAT44(iVar12,(uint)*pbVar17)" (identifier "CONCAT44") (argument_list "(iVar12,(uint)*pbVar17)" (( "(") (identifier "iVar12") (, ",") (binary_expression "(uint)*pbVar17" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "pbVar17")) () ")")))) (; ";")) (expression_statement "puVar22 = puVar18;" (assignment_expression "puVar22 = puVar18" (identifier "puVar22") (= "=") (identifier "puVar18")) (; ";")) (if_statement "if (*pbVar17 != 0) goto LAB_000b2b48;" (if "if") (parenthesized_expression "(*pbVar17 != 0)" (( "(") (binary_expression "*pbVar17 != 0" (pointer_expression "*pbVar17" (* "*") (identifier "pbVar17")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b2b48;" (goto "goto") (statement_identifier "LAB_000b2b48") (; ";"))) (expression_statement "uVar13 = iVar12 - 8;" (assignment_expression "uVar13 = iVar12 - 8" (identifier "uVar13") (= "=") (binary_expression "iVar12 - 8" (identifier "iVar12") (- "-") (number_literal "8"))) (; ";")) (expression_statement "uVar4 = uVar13 & 1;" (assignment_expression "uVar4 = uVar13 & 1" (identifier "uVar4") (= "=") (binary_expression "uVar13 & 1" (identifier "uVar13") (& "&") (number_literal "1"))) (; ";")) (if_statement "if (uVar13 < 5) goto LAB_000b2ad4;" (if "if") (parenthesized_expression "(uVar13 < 5)" (( "(") (binary_expression "uVar13 < 5" (identifier "uVar13") (< "<") (number_literal "5")) () ")")) (goto_statement "goto LAB_000b2ad4;" (goto "goto") (statement_identifier "LAB_000b2ad4") (; ";"))) (labeled_statement "LAB_000b2ac4:\n            pbVar17 = *(byte **)(puVar5 + 0x77c24);" (statement_identifier "LAB_000b2ac4") (: ":") (expression_statement "pbVar17 = *(byte **)(puVar5 + 0x77c24);" (assignment_expression "pbVar17 = *(byte **)(puVar5 + 0x77c24)" (identifier "pbVar17") (= "=") (pointer_expression "*(byte **)(puVar5 + 0x77c24)" (* "*") (cast_expression "(byte **)(puVar5 + 0x77c24)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x77c24)" (( "(") (binary_expression "puVar5 + 0x77c24" (identifier "puVar5") (+ "+") (number_literal "0x77c24")) () ")"))))) (; ";"))) (do_statement "do {\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            } while( true );" (do "do") (compound_statement "{\n              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);\nLAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }\n            }" ({ "{") (expression_statement "uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);" (assignment_expression "uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19)" (identifier "uVar4") (= "=") (call_expression "(**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b3c))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x77b3c)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x77b3c)" (* "*") (cast_expression "(code **)(puVar5 + 0x77b3c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x77b3c)" (( "(") (binary_expression "puVar5 + 0x77b3c" (identifier "puVar5") (+ "+") (number_literal "0x77b3c")) () ")"))))) () ")")) (argument_list "(pbVar17,pbVar19)" (( "(") (identifier "pbVar17") (, ",") (identifier "pbVar19") () ")")))) (; ";")) (labeled_statement "LAB_000b2ad4:\n              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }" (statement_identifier "LAB_000b2ad4") (: ":") (while_statement "while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }" (while "while") (parenthesized_expression "(pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0)" (( "(") (comma_expression "pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0" (assignment_expression "pbVar17 = *(byte **)(puVar5 + 0x77c24)" (identifier "pbVar17") (= "=") (pointer_expression "*(byte **)(puVar5 + 0x77c24)" (* "*") (cast_expression "(byte **)(puVar5 + 0x77c24)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x77c24)" (( "(") (binary_expression "puVar5 + 0x77c24" (identifier "puVar5") (+ "+") (number_literal "0x77c24")) () ")"))))) (, ",") (binary_expression "uVar4 == 0" (identifier "uVar4") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n                puVar18 = puVar22;\n                if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }\n                do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));\n                uVar4 = uVar13 & 1;\n                if (4 < uVar13) goto LAB_000b2ac4;\n              }" ({ "{") (expression_statement "puVar18 = puVar22;" (assignment_expression "puVar18 = puVar22" (identifier "puVar18") (= "=") (identifier "puVar22")) (; ";")) (if_statement "if (uVar13 != 0) {\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }" (if "if") (parenthesized_expression "(uVar13 != 0)" (( "(") (binary_expression "uVar13 != 0" (identifier "uVar13") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);\n                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);\n                  pbVar17 = local_1ec;\n                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);\n                }" ({ "{") (expression_statement "(**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);" (call_expression "(**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4)" (parenthesized_expression "(**(code **)(puVar5 + 0x788e8))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x788e8)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x788e8)" (* "*") (cast_expression "(code **)(puVar5 + 0x788e8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x788e8)" (( "(") (binary_expression "puVar5 + 0x788e8" (identifier "puVar5") (+ "+") (number_literal "0x788e8")) () ")"))))) () ")")) (argument_list "(&local_104,pbVar19 + 8,uVar13,4)" (( "(") (pointer_expression "&local_104" (& "&") (identifier "local_104")) (, ",") (binary_expression "pbVar19 + 8" (identifier "pbVar19") (+ "+") (number_literal "8")) (, ",") (identifier "uVar13") (, ",") (number_literal "4") () ")"))) (; ";")) (expression_statement "(**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);" (call_expression "(**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8)" (parenthesized_expression "(**(code **)(puVar5 + 0x78acc))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x78acc)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x78acc)" (* "*") (cast_expression "(code **)(puVar5 + 0x78acc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x78acc)" (( "(") (binary_expression "puVar5 + 0x78acc" (identifier "puVar5") (+ "+") (number_literal "0x78acc")) () ")"))))) () ")")) (argument_list "(pbVar19 + uVar13,pbVar19,8)" (( "(") (binary_expression "pbVar19 + uVar13" (identifier "pbVar19") (+ "+") (identifier "uVar13")) (, ",") (identifier "pbVar19") (, ",") (number_literal "8") () ")"))) (; ";")) (expression_statement "pbVar17 = local_1ec;" (assignment_expression "pbVar17 = local_1ec" (identifier "pbVar17") (= "=") (identifier "local_1ec")) (; ";")) (expression_statement "(**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);" (call_expression "(**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13)" (parenthesized_expression "(**(code **)(puVar5 + 0x78aa8))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x78aa8)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x78aa8)" (* "*") (cast_expression "(code **)(puVar5 + 0x78aa8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x78aa8)" (( "(") (binary_expression "puVar5 + 0x78aa8" (identifier "puVar5") (+ "+") (number_literal "0x78aa8")) () ")"))))) () ")")) (argument_list "(local_1ec,&local_104,uVar13)" (( "(") (identifier "local_1ec") (, ",") (pointer_expression "&local_104" (& "&") (identifier "local_104")) (, ",") (identifier "uVar13") () ")"))) (; ";")) (} "}"))) (do_statement "do {\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));" (do "do") (compound_statement "{\n                  pbVar19 = (byte *)puVar18[1];\nLAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;\n                  puVar22 = puVar18;\n                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;\nLAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();\nLAB_000b2b48:\n                  puVar18 = puVar22;\n                }" ({ "{") (expression_statement "pbVar19 = (byte *)puVar18[1];" (assignment_expression "pbVar19 = (byte *)puVar18[1]" (identifier "pbVar19") (= "=") (cast_expression "(byte *)puVar18[1]" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar18[1]" (identifier "puVar18") ([ "[") (number_literal "1") (] "]")))) (; ";")) (labeled_statement "LAB_000b2b34:\n                  uVar14 = uVar26 & 0x10;" (statement_identifier "LAB_000b2b34") (: ":") (expression_statement "uVar14 = uVar26 & 0x10;" (assignment_expression "uVar14 = uVar26 & 0x10" (identifier "uVar14") (= "=") (binary_expression "uVar26 & 0x10" (identifier "uVar26") (& "&") (number_literal "0x10"))) (; ";"))) (expression_statement "puVar22 = puVar18;" (assignment_expression "puVar22 = puVar18" (identifier "puVar22") (= "=") (identifier "puVar18")) (; ";")) (if_statement "if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;" (if "if") (parenthesized_expression "(pbVar19 == (byte *)0x0)" (( "(") (binary_expression "pbVar19 == (byte *)0x0" (identifier "pbVar19") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000b27b0;" (goto "goto") (statement_identifier "LAB_000b27b0") (; ";"))) (labeled_statement "LAB_000b2b3c:\n                  uVar31 = (**(code **)(puVar5 + 0x77b34))();" (statement_identifier "LAB_000b2b3c") (: ":") (expression_statement "uVar31 = (**(code **)(puVar5 + 0x77b34))();" (assignment_expression "uVar31 = (**(code **)(puVar5 + 0x77b34))()" (identifier "uVar31") (= "=") (call_expression "(**(code **)(puVar5 + 0x77b34))()" (parenthesized_expression "(**(code **)(puVar5 + 0x77b34))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x77b34)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x77b34)" (* "*") (cast_expression "(code **)(puVar5 + 0x77b34)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x77b34)" (( "(") (binary_expression "puVar5 + 0x77b34" (identifier "puVar5") (+ "+") (number_literal "0x77b34")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";"))) (labeled_statement "LAB_000b2b48:\n                  puVar18 = puVar22;" (statement_identifier "LAB_000b2b48") (: ":") (expression_statement "puVar18 = puVar22;" (assignment_expression "puVar18 = puVar22" (identifier "puVar18") (= "=") (identifier "puVar22")) (; ";"))) (} "}")) (while "while") (parenthesized_expression "(((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0))" (( "(") (binary_expression "((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)) ||\n                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0)" (parenthesized_expression "((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30))" (( "(") (binary_expression "(((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||\n                         (9 < pbVar17[2] - 0x30)" (parenthesized_expression "(((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30))" (( "(") (binary_expression "((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)" (parenthesized_expression "((int)uVar31 != 0x2e)" (( "(") (binary_expression "(int)uVar31 != 0x2e" (cast_expression "(int)uVar31" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar31")) (!= "!=") (number_literal "0x2e")) () ")")) (|| "||") (parenthesized_expression "(9 < pbVar17[1] - 0x30)" (( "(") (binary_expression "9 < pbVar17[1] - 0x30" (number_literal "9") (< "<") (binary_expression "pbVar17[1] - 0x30" (subscript_expression "pbVar17[1]" (identifier "pbVar17") ([ "[") (number_literal "1") (] "]")) (- "-") (number_literal "0x30"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(9 < pbVar17[2] - 0x30)" (( "(") (binary_expression "9 < pbVar17[2] - 0x30" (number_literal "9") (< "<") (binary_expression "pbVar17[2] - 0x30" (subscript_expression "pbVar17[2]" (identifier "pbVar17") ([ "[") (number_literal "2") (] "]")) (- "-") (number_literal "0x30"))) () ")"))) () ")")) (|| "||") (parenthesized_expression "(uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0)" (( "(") (comma_expression "uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0" (assignment_expression "uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8" (identifier "uVar13") (= "=") (binary_expression "(int)((ulonglong)uVar31 >> 0x20) - 8" (cast_expression "(int)((ulonglong)uVar31 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar31 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar31 >> 0x20" (cast_expression "(ulonglong)uVar31" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar31")) (>> ">>") (number_literal "0x20")) () ")"))) (- "-") (number_literal "8"))) (, ",") (binary_expression "pbVar17[3] != 0" (subscript_expression "pbVar17[3]" (identifier "pbVar17") ([ "[") (number_literal "3") (] "]")) (!= "!=") (number_literal "0"))) () ")"))) () ")")) (; ";")) (expression_statement "uVar4 = uVar13 & 1;" (assignment_expression "uVar4 = uVar13 & 1" (identifier "uVar4") (= "=") (binary_expression "uVar13 & 1" (identifier "uVar13") (& "&") (number_literal "1"))) (; ";")) (if_statement "if (4 < uVar13) goto LAB_000b2ac4;" (if "if") (parenthesized_expression "(4 < uVar13)" (( "(") (binary_expression "4 < uVar13" (number_literal "4") (< "<") (identifier "uVar13")) () ")")) (goto_statement "goto LAB_000b2ac4;" (goto "goto") (statement_identifier "LAB_000b2ac4") (; ";"))) (} "}")))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (expression_statement "local_1d4 = 0;" (assignment_expression "local_1d4 = 0" (identifier "local_1d4") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1d0 = 0;" (assignment_expression "local_1d0 = 0" (identifier "local_1d0") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_1cc = 0;" (assignment_expression "local_1cc = 0" (identifier "local_1cc") (= "=") (number_literal "0")) (; ";")) (if_statement "if ((uVar4 & 0x40) == 0) {\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }" (if "if") (parenthesized_expression "((uVar4 & 0x40) == 0)" (( "(") (binary_expression "(uVar4 & 0x40) == 0" (parenthesized_expression "(uVar4 & 0x40)" (( "(") (binary_expression "uVar4 & 0x40" (identifier "uVar4") (& "&") (number_literal "0x40")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);\nLAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }\n            puVar18 = &local_1d4;\n            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();\n            if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }\n            goto LAB_000b28d0;\n          }" ({ "{") (expression_statement "(**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);" (call_expression "(**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4)" (parenthesized_expression "(**(code **)(puVar5 + 0x7847c))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x7847c)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x7847c)" (* "*") (cast_expression "(code **)(puVar5 + 0x7847c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x7847c)" (( "(") (binary_expression "puVar5 + 0x7847c" (identifier "puVar5") (+ "+") (number_literal "0x7847c")) () ")"))))) () ")")) (argument_list "(local_1ec,&local_1d4)" (( "(") (identifier "local_1ec") (, ",") (pointer_expression "&local_1d4" (& "&") (identifier "local_1d4")) () ")"))) (; ";")) (labeled_statement "LAB_000b2874:\n            if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }" (statement_identifier "LAB_000b2874") (: ":") (if_statement "if (*local_1ec != 0x40) {\n              local_1b4 = 0xffffffff;\n            }" (if "if") (parenthesized_expression "(*local_1ec != 0x40)" (( "(") (binary_expression "*local_1ec != 0x40" (pointer_expression "*local_1ec" (* "*") (identifier "local_1ec")) (!= "!=") (number_literal "0x40")) () ")")) (compound_statement "{\n              local_1b4 = 0xffffffff;\n            }" ({ "{") (expression_statement "local_1b4 = 0xffffffff;" (assignment_expression "local_1b4 = 0xffffffff" (identifier "local_1b4") (= "=") (number_literal "0xffffffff")) (; ";")) (} "}")))) (expression_statement "puVar18 = &local_1d4;" (assignment_expression "puVar18 = &local_1d4" (identifier "puVar18") (= "=") (pointer_expression "&local_1d4" (& "&") (identifier "local_1d4"))) (; ";")) (expression_statement "local_1dc[0] = (**(code **)(puVar5 + 0x78480))();" (assignment_expression "local_1dc[0] = (**(code **)(puVar5 + 0x78480))()" (subscript_expression "local_1dc[0]" (identifier "local_1dc") ([ "[") (number_literal "0") (] "]")) (= "=") (call_expression "(**(code **)(puVar5 + 0x78480))()" (parenthesized_expression "(**(code **)(puVar5 + 0x78480))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x78480)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x78480)" (* "*") (cast_expression "(code **)(puVar5 + 0x78480)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x78480)" (( "(") (binary_expression "puVar5 + 0x78480" (identifier "puVar5") (+ "+") (number_literal "0x78480")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }" (if "if") (parenthesized_expression "(((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0))" (( "(") (binary_expression "((uVar4 & 2) != 0) &&\n               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)" (parenthesized_expression "((uVar4 & 2) != 0)" (( "(") (binary_expression "(uVar4 & 2) != 0" (parenthesized_expression "(uVar4 & 2)" (( "(") (binary_expression "uVar4 & 2" (identifier "uVar4") (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)" (( "(") (comma_expression "iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22)" (identifier "iVar12") (= "=") (call_expression "(**(code **)(puVar5 + 0x78708))(puVar22)" (parenthesized_expression "(**(code **)(puVar5 + 0x78708))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x78708)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x78708)" (* "*") (cast_expression "(code **)(puVar5 + 0x78708)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x78708)" (( "(") (binary_expression "puVar5 + 0x78708" (identifier "puVar5") (+ "+") (number_literal "0x78708")) () ")"))))) () ")")) (argument_list "(puVar22)" (( "(") (identifier "puVar22") () ")")))) (, ",") (binary_expression "iVar12 < 0" (identifier "iVar12") (< "<") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);\n            }" ({ "{") (expression_statement "(**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);" (call_expression "(**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b90))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x77b90)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x77b90)" (* "*") (cast_expression "(code **)(puVar5 + 0x77b90)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x77b90)" (( "(") (binary_expression "puVar5 + 0x77b90" (identifier "puVar5") (+ "+") (number_literal "0x77b90")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar5 + 0x77b00) + -0x4e34)" (( "(") (binary_expression "*(int *)(puVar5 + 0x77b00) + -0x4e34" (pointer_expression "*(int *)(puVar5 + 0x77b00)" (* "*") (cast_expression "(int *)(puVar5 + 0x77b00)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77b00)" (( "(") (binary_expression "puVar5 + 0x77b00" (identifier "puVar5") (+ "+") (number_literal "0x77b00")) () ")")))) (+ "+") (number_literal "-0x4e34")) () ")"))) (; ";")) (} "}"))) (goto_statement "goto LAB_000b28d0;" (goto "goto") (statement_identifier "LAB_000b28d0") (; ";")) (} "}"))) (expression_statement "iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);" (assignment_expression "iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4)" (identifier "iVar12") (= "=") (call_expression "(**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4)" (parenthesized_expression "(**(code **)(puVar5 + 0x789f8))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x789f8)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x789f8)" (* "*") (cast_expression "(code **)(puVar5 + 0x789f8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x789f8)" (( "(") (binary_expression "puVar5 + 0x789f8" (identifier "puVar5") (+ "+") (number_literal "0x789f8")) () ")"))))) () ")")) (argument_list "(local_1ec,local_1e8,&local_1d4)" (( "(") (identifier "local_1ec") (, ",") (identifier "local_1e8") (, ",") (pointer_expression "&local_1d4" (& "&") (identifier "local_1d4")) () ")")))) (; ";")) (if_statement "if (iVar12 != 0) goto LAB_000b2874;" (if "if") (parenthesized_expression "(iVar12 != 0)" (( "(") (binary_expression "iVar12 != 0" (identifier "iVar12") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b2874;" (goto "goto") (statement_identifier "LAB_000b2874") (; ";"))) (expression_statement "uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);" (assignment_expression "uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec)" (identifier "uVar13") (= "=") (call_expression "(**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec)" (parenthesized_expression "(**(code **)(puVar5 + 0x77b3c))" (( "(") (pointer_expression "**(code **)(puVar5 + 0x77b3c)" (* "*") (pointer_expression "*(code **)(puVar5 + 0x77b3c)" (* "*") (cast_expression "(code **)(puVar5 + 0x77b3c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x77b3c)" (( "(") (binary_expression "puVar5 + 0x77b3c" (identifier "puVar5") (+ "+") (number_literal "0x77b3c")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(puVar5 + 0x77c24),local_1ec)" (( "(") (pointer_expression "*(undefined4 *)(puVar5 + 0x77c24)" (* "*") (cast_expression "(undefined4 *)(puVar5 + 0x77c24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x77c24)" (( "(") (binary_expression "puVar5 + 0x77c24" (identifier "puVar5") (+ "+") (number_literal "0x77c24")) () ")")))) (, ",") (identifier "local_1ec") () ")")))) (; ";")) (expression_statement "pbVar20 = pbVar19;" (assignment_expression "pbVar20 = pbVar19" (identifier "pbVar20") (= "=") (identifier "pbVar19")) (; ";")) (expression_statement "uVar26 = uVar4;" (assignment_expression "uVar26 = uVar4" (identifier "uVar26") (= "=") (identifier "uVar4")) (; ";")) (labeled_statement "LAB_000b2834:\n          uVar14 = uVar26 & 0x10;" (statement_identifier "LAB_000b2834") (: ":") (expression_statement "uVar14 = uVar26 & 0x10;" (assignment_expression "uVar14 = uVar26 & 0x10" (identifier "uVar14") (= "=") (binary_expression "uVar26 & 0x10" (identifier "uVar26") (& "&") (number_literal "0x10"))) (; ";"))) (if_statement "if (uVar13 != 0) goto LAB_000b27b0;" (if "if") (parenthesized_expression "(uVar13 != 0)" (( "(") (binary_expression "uVar13 != 0" (identifier "uVar13") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b27b0;" (goto "goto") (statement_identifier "LAB_000b27b0") (; ";"))) (expression_statement "uVar4 = uVar26 | 2;" (assignment_expression "uVar4 = uVar26 | 2" (identifier "uVar4") (= "=") (binary_expression "uVar26 | 2" (identifier "uVar26") (| "|") (number_literal "2"))) (; ";")) (expression_statement "local_1ec = (byte *)0x0;" (assignment_expression "local_1ec = (byte *)0x0" (identifier "local_1ec") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;" (if "if") (parenthesized_expression "((uVar26 & 0x10) != 0)" (( "(") (binary_expression "(uVar26 & 0x10) != 0" (parenthesized_expression "(uVar26 & 0x10)" (( "(") (binary_expression "uVar26 & 0x10" (identifier "uVar26") (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b27b8;" (goto "goto") (statement_identifier "LAB_000b27b8") (; ";"))) (expression_statement "pcVar30 = *(code **)(puVar5 + 0x78a84);" (assignment_expression "pcVar30 = *(code **)(puVar5 + 0x78a84)" (identifier "pcVar30") (= "=") (pointer_expression "*(code **)(puVar5 + 0x78a84)" (* "*") (cast_expression "(code **)(puVar5 + 0x78a84)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x78a84)" (( "(") (binary_expression "puVar5 + 0x78a84" (identifier "puVar5") (+ "+") (number_literal "0x78a84")) () ")"))))) (; ";")) (labeled_statement "LAB_000b2850:\n          (*pcVar30)(local_1dc);" (statement_identifier "LAB_000b2850") (: ":") (expression_statement "(*pcVar30)(local_1dc);" (call_expression "(*pcVar30)(local_1dc)" (parenthesized_expression "(*pcVar30)" (( "(") (pointer_expression "*pcVar30" (* "*") (identifier "pcVar30")) () ")")) (argument_list "(local_1dc)" (( "(") (identifier "local_1dc") () ")"))) (; ";"))) (expression_statement "pbVar19 = pbVar20;" (assignment_expression "pbVar19 = pbVar20" (identifier "pbVar19") (= "=") (identifier "pbVar20")) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (} "}"))) (} "}")) (else_clause "else {\n    puVar22 = (undefined4 *)0x9;\n  }" (else "else") (compound_statement "{\n    puVar22 = (undefined4 *)0x9;\n  }" ({ "{") (expression_statement "puVar22 = (undefined4 *)0x9;" (assignment_expression "puVar22 = (undefined4 *)0x9" (identifier "puVar22") (= "=") (cast_expression "(undefined4 *)0x9" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x9"))) (; ";")) (} "}")))) (labeled_statement "LAB_000b204c:\n  uVar4 = 0;" (statement_identifier "LAB_000b204c") (: ":") (expression_statement "uVar4 = 0;" (assignment_expression "uVar4 = 0" (identifier "uVar4") (= "=") (number_literal "0")) (; ";"))) (expression_statement "piVar21 = (int *)0x0;" (assignment_expression "piVar21 = (int *)0x0" (identifier "piVar21") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "local_74 = *(int *)PTR_optind_0012b0ec;" (assignment_expression "local_74 = *(int *)PTR_optind_0012b0ec" (identifier "local_74") (= "=") (pointer_expression "*(int *)PTR_optind_0012b0ec" (* "*") (cast_expression "(int *)PTR_optind_0012b0ec" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_optind_0012b0ec")))) (; ";")) (expression_statement "puVar5 = PTR_FUN_0012a1a8 + -0x6a44;" (assignment_expression "puVar5 = PTR_FUN_0012a1a8 + -0x6a44" (identifier "puVar5") (= "=") (binary_expression "PTR_FUN_0012a1a8 + -0x6a44" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "-0x6a44"))) (; ";")) (expression_statement "puVar6 = PTR_FUN_0012a1a8 + -0x1308;" (assignment_expression "puVar6 = PTR_FUN_0012a1a8 + -0x1308" (identifier "puVar6") (= "=") (binary_expression "PTR_FUN_0012a1a8 + -0x1308" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "-0x1308"))) (; ";")) (expression_statement "piVar23 = (int *)PTR_FUN_0012a1a8;" (assignment_expression "piVar23 = (int *)PTR_FUN_0012a1a8" (identifier "piVar23") (= "=") (cast_expression "(int *)PTR_FUN_0012a1a8" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a1a8"))) (; ";")) (do_statement "do {\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  } while( true );" (do "do") (compound_statement "{\n    do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);\n    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);\n    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }\n    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);\n    iVar12 = uVar4 * 2;\n    uVar4 = uVar4 + 1;\n    piVar21[iVar12] = (int)piVar25;\n    (piVar21 + iVar12)[1] = (int)piVar23;\n  }" ({ "{") (do_statement "do {\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    } while (*local_38 == 0);" (do "do") (compound_statement "{\n      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);\n      if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }\n    }" ({ "{") (expression_statement "local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);" (assignment_expression "local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5)" (identifier "local_38") (= "=") (cast_expression "(byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" (( "(") (pointer_expression "*(code *)PTR_strsep_0012afa0" (* "*") (cast_expression "(code *)PTR_strsep_0012afa0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strsep_0012afa0"))) () ")")) (argument_list "(auStack_3c,puVar5)" (( "(") (identifier "auStack_3c") (, ",") (identifier "puVar5") () ")"))))) (; ";")) (if_statement "if (local_38 == (byte *)0x0) {\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }" (if "if") (parenthesized_expression "(local_38 == (byte *)0x0)" (( "(") (binary_expression "local_38 == (byte *)0x0" (identifier "local_38") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }\n        piVar25 = (int *)(param_2 + local_74 * 4);\n        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);\n        if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }\n        puVar6 = PTR_FUN_0012a3f0;\n        puVar5 = PTR_FUN_0012a2fc;\n        local_5c = 0;\nLAB_000b216c:\n        iVar12 = (*(code *)puVar6)();\n        if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }\n        piVar23 = &local_34;\n        local_74 = 0;\n        do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );\n      }" ({ "{") (if_statement "if (uVar4 == 0) {\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }" (if "if") (parenthesized_expression "(uVar4 == 0)" (( "(") (binary_expression "uVar4 == 0" (identifier "uVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);\n        }" ({ "{") (expression_statement "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);" (call_expression "(*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1e4)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a1e4" (* "*") (cast_expression "(code *)PTR_FUN_0012a1e4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a1e4"))) () ")")) (argument_list "(PTR_FUN_0012a1a8 + -0x4e90)" (( "(") (binary_expression "PTR_FUN_0012a1a8 + -0x4e90" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "-0x4e90")) () ")"))) (; ";")) (} "}"))) (expression_statement "piVar25 = (int *)(param_2 + local_74 * 4);" (assignment_expression "piVar25 = (int *)(param_2 + local_74 * 4)" (identifier "piVar25") (= "=") (cast_expression "(int *)(param_2 + local_74 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + local_74 * 4)" (( "(") (binary_expression "param_2 + local_74 * 4" (identifier "param_2") (+ "+") (binary_expression "local_74 * 4" (identifier "local_74") (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "(*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);" (call_expression "(*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64)" (parenthesized_expression "(*(code *)PTR_qsort_0012ad24)" (( "(") (pointer_expression "*(code *)PTR_qsort_0012ad24" (* "*") (cast_expression "(code *)PTR_qsort_0012ad24" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_qsort_0012ad24"))) () ")")) (argument_list "(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64)" (( "(") (identifier "piVar21") (, ",") (identifier "uVar4") (, ",") (number_literal "8") (, ",") (binary_expression "PTR_LAB_0012aad4 + 0x1f64" (identifier "PTR_LAB_0012aad4") (+ "+") (number_literal "0x1f64")) () ")"))) (; ";")) (if_statement "if (*piVar25 == 0) {\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }" (if "if") (parenthesized_expression "(*piVar25 == 0)" (( "(") (binary_expression "*piVar25 == 0" (pointer_expression "*piVar25" (* "*") (identifier "piVar25")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          piVar25 = piVar25 + -1;\n          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);\n        }" ({ "{") (expression_statement "piVar25 = piVar25 + -1;" (assignment_expression "piVar25 = piVar25 + -1" (identifier "piVar25") (= "=") (binary_expression "piVar25 + -1" (identifier "piVar25") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "*piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);" (assignment_expression "*piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308)" (pointer_expression "*piVar25" (* "*") (identifier "piVar25")) (= "=") (cast_expression "(int)(PTR_FUN_0012a1a8 + -0x1308)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(PTR_FUN_0012a1a8 + -0x1308)" (( "(") (binary_expression "PTR_FUN_0012a1a8 + -0x1308" (identifier "PTR_FUN_0012a1a8") (+ "+") (number_literal "-0x1308")) () ")")))) (; ";")) (} "}"))) (expression_statement "puVar6 = PTR_FUN_0012a3f0;" (assignment_expression "puVar6 = PTR_FUN_0012a3f0" (identifier "puVar6") (= "=") (identifier "PTR_FUN_0012a3f0")) (; ";")) (expression_statement "puVar5 = PTR_FUN_0012a2fc;" (assignment_expression "puVar5 = PTR_FUN_0012a2fc" (identifier "puVar5") (= "=") (identifier "PTR_FUN_0012a2fc")) (; ";")) (expression_statement "local_5c = 0;" (assignment_expression "local_5c = 0" (identifier "local_5c") (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_000b216c:\n        iVar12 = (*(code *)puVar6)();" (statement_identifier "LAB_000b216c") (: ":") (expression_statement "iVar12 = (*(code *)puVar6)();" (assignment_expression "iVar12 = (*(code *)puVar6)()" (identifier "iVar12") (= "=") (call_expression "(*(code *)puVar6)()" (parenthesized_expression "(*(code *)puVar6)" (( "(") (pointer_expression "*(code *)puVar6" (* "*") (cast_expression "(code *)puVar6" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar6"))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";"))) (if_statement "if (iVar12 == 0) {\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }" (if "if") (parenthesized_expression "(iVar12 == 0)" (( "(") (binary_expression "iVar12 == 0" (identifier "iVar12") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          local_5c = 1;\n          goto LAB_000b21b8;\n        }" ({ "{") (expression_statement "local_5c = 1;" (assignment_expression "local_5c = 1" (identifier "local_5c") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_000b21b8;" (goto "goto") (statement_identifier "LAB_000b21b8") (; ";")) (} "}"))) (expression_statement "piVar23 = &local_34;" (assignment_expression "piVar23 = &local_34" (identifier "piVar23") (= "=") (pointer_expression "&local_34" (& "&") (identifier "local_34"))) (; ";")) (expression_statement "local_74 = 0;" (assignment_expression "local_74 = 0" (identifier "local_74") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        } while( true );" (do "do") (compound_statement "{\n          iVar8 = (*(code *)puVar5)(iVar12);\n          local_34 = iVar8;\n          if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }\n          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);\n          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);\n          iVar8 = local_34;\n          puVar3 = PTR_stdout_0012ae40;\n          uVar26 = *(uint *)PTR_DAT_0012a334;\n          if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }\nLAB_000b22d0:\n          local_74 = local_74 + 1;\n          (*(code *)PTR_free_0012b168)(iVar10);\n          (*(code *)PTR_free_0012b168)(iVar8);\n        }" ({ "{") (expression_statement "iVar8 = (*(code *)puVar5)(iVar12);" (assignment_expression "iVar8 = (*(code *)puVar5)(iVar12)" (identifier "iVar8") (= "=") (call_expression "(*(code *)puVar5)(iVar12)" (parenthesized_expression "(*(code *)puVar5)" (( "(") (pointer_expression "*(code *)puVar5" (* "*") (cast_expression "(code *)puVar5" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar5"))) () ")")) (argument_list "(iVar12)" (( "(") (identifier "iVar12") () ")")))) (; ";")) (expression_statement "local_34 = iVar8;" (assignment_expression "local_34 = iVar8" (identifier "local_34") (= "=") (identifier "iVar8")) (; ";")) (if_statement "if (iVar8 == 0) {\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            (*(code *)PTR_FUN_0012a3f4)(iVar12);\nLAB_000b21b8:\n            piVar25 = piVar25 + 1;\n            if (*piVar25 != 0) goto LAB_000b216c;\n            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);\n          }" ({ "{") (expression_statement "(*(code *)PTR_FUN_0012a3f4)(iVar12);" (call_expression "(*(code *)PTR_FUN_0012a3f4)(iVar12)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3f4)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a3f4" (* "*") (cast_expression "(code *)PTR_FUN_0012a3f4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a3f4"))) () ")")) (argument_list "(iVar12)" (( "(") (identifier "iVar12") () ")"))) (; ";")) (labeled_statement "LAB_000b21b8:\n            piVar25 = piVar25 + 1;" (statement_identifier "LAB_000b21b8") (: ":") (expression_statement "piVar25 = piVar25 + 1;" (assignment_expression "piVar25 = piVar25 + 1" (identifier "piVar25") (= "=") (binary_expression "piVar25 + 1" (identifier "piVar25") (+ "+") (number_literal "1"))) (; ";"))) (if_statement "if (*piVar25 != 0) goto LAB_000b216c;" (if "if") (parenthesized_expression "(*piVar25 != 0)" (( "(") (binary_expression "*piVar25 != 0" (pointer_expression "*piVar25" (* "*") (identifier "piVar25")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b216c;" (goto "goto") (statement_identifier "LAB_000b216c") (; ";"))) (expression_statement "iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);" (assignment_expression "iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c)" (identifier "iVar8") (= "=") (call_expression "(*(code *)PTR_FUN_0012a3f8)(local_5c)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3f8)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a3f8" (* "*") (cast_expression "(code *)PTR_FUN_0012a3f8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a3f8"))) () ")")) (argument_list "(local_5c)" (( "(") (identifier "local_5c") () ")")))) (; ";")) (} "}"))) (expression_statement "iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);" (assignment_expression "iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_strlen_0012af3c)(iVar8)" (parenthesized_expression "(*(code *)PTR_strlen_0012af3c)" (( "(") (pointer_expression "*(code *)PTR_strlen_0012af3c" (* "*") (cast_expression "(code *)PTR_strlen_0012af3c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strlen_0012af3c"))) () ")")) (argument_list "(iVar8)" (( "(") (identifier "iVar8") () ")")))) (; ";")) (expression_statement "iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);" (assignment_expression "iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1)" (identifier "iVar10") (= "=") (call_expression "(*(code *)PTR_FUN_0012a1d0)(iVar9 + 1)" (parenthesized_expression "(*(code *)PTR_FUN_0012a1d0)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a1d0" (* "*") (cast_expression "(code *)PTR_FUN_0012a1d0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a1d0"))) () ")")) (argument_list "(iVar9 + 1)" (( "(") (binary_expression "iVar9 + 1" (identifier "iVar9") (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "iVar8 = local_34;" (assignment_expression "iVar8 = local_34" (identifier "iVar8") (= "=") (identifier "local_34")) (; ";")) (expression_statement "puVar3 = PTR_stdout_0012ae40;" (assignment_expression "puVar3 = PTR_stdout_0012ae40" (identifier "puVar3") (= "=") (identifier "PTR_stdout_0012ae40")) (; ";")) (expression_statement "uVar26 = *(uint *)PTR_DAT_0012a334;" (assignment_expression "uVar26 = *(uint *)PTR_DAT_0012a334" (identifier "uVar26") (= "=") (pointer_expression "*(uint *)PTR_DAT_0012a334" (* "*") (cast_expression "(uint *)PTR_DAT_0012a334" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_DAT_0012a334")))) (; ";")) (if_statement "if ((uVar26 & 3) == 0) {\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }\n          else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }" (if "if") (parenthesized_expression "((uVar26 & 3) == 0)" (( "(") (binary_expression "(uVar26 & 3) == 0" (parenthesized_expression "(uVar26 & 3)" (( "(") (binary_expression "uVar26 & 3" (identifier "uVar26") (& "&") (number_literal "3")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }\n          }" ({ "{") (if_statement "if (puVar22 == (undefined4 *)&DAT_0000000a) {\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }\n            else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }" (if "if") (parenthesized_expression "(puVar22 == (undefined4 *)&DAT_0000000a)" (( "(") (binary_expression "puVar22 == (undefined4 *)&DAT_0000000a" (identifier "puVar22") (== "==") (cast_expression "(undefined4 *)&DAT_0000000a" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_0000000a" (& "&") (identifier "DAT_0000000a")))) () ")")) (compound_statement "{\n              iVar9 = *piVar21;\n              if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }\n            }" ({ "{") (expression_statement "iVar9 = *piVar21;" (assignment_expression "iVar9 = *piVar21" (identifier "iVar9") (= "=") (pointer_expression "*piVar21" (* "*") (identifier "piVar21"))) (; ";")) (if_statement "if (iVar9 <= local_74) {\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }" (if "if") (parenthesized_expression "(iVar9 <= local_74)" (( "(") (binary_expression "iVar9 <= local_74" (identifier "iVar9") (<= "<=") (identifier "local_74")) () ")")) (compound_statement "{\n                if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }\n                (*(code *)PTR_puts_0012afb4)(local_34);\n              }" ({ "{") (if_statement "if (iVar9 < local_74) {\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }" (if "if") (parenthesized_expression "(iVar9 < local_74)" (( "(") (binary_expression "iVar9 < local_74" (identifier "iVar9") (< "<") (identifier "local_74")) () ")")) (compound_statement "{\n                  iVar16 = 0;\n                  do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);\n                }" ({ "{") (expression_statement "iVar16 = 0;" (assignment_expression "iVar16 = 0" (identifier "iVar16") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  } while (iVar9 < local_74);" (do "do") (compound_statement "{\n                    iVar9 = iVar9 + 1;\n                    if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }\n                  }" ({ "{") (expression_statement "iVar9 = iVar9 + 1;" (assignment_expression "iVar9 = iVar9 + 1" (identifier "iVar9") (= "=") (binary_expression "iVar9 + 1" (identifier "iVar9") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (piVar21[iVar16 * 2 + 1] < iVar9) {\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }\n                    else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" (if "if") (parenthesized_expression "(piVar21[iVar16 * 2 + 1] < iVar9)" (( "(") (binary_expression "piVar21[iVar16 * 2 + 1] < iVar9" (subscript_expression "piVar21[iVar16 * 2 + 1]" (identifier "piVar21") ([ "[") (binary_expression "iVar16 * 2 + 1" (binary_expression "iVar16 * 2" (identifier "iVar16") (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (< "<") (identifier "iVar9")) () ")")) (compound_statement "{\n                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;\n                      iVar9 = piVar21[iVar16 * 2 + 2];\nLAB_000b2350:\n                      iVar16 = iVar16 + 1;\n                      if (local_74 < iVar9) goto LAB_000b22d0;\n                    }" ({ "{") (if_statement "if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;" (if "if") (parenthesized_expression "(uVar4 <= iVar16 + 1U)" (( "(") (binary_expression "uVar4 <= iVar16 + 1U" (identifier "uVar4") (<= "<=") (binary_expression "iVar16 + 1U" (identifier "iVar16") (+ "+") (number_literal "1U"))) () ")")) (goto_statement "goto LAB_000b22d0;" (goto "goto") (statement_identifier "LAB_000b22d0") (; ";"))) (expression_statement "iVar9 = piVar21[iVar16 * 2 + 2];" (assignment_expression "iVar9 = piVar21[iVar16 * 2 + 2]" (identifier "iVar9") (= "=") (subscript_expression "piVar21[iVar16 * 2 + 2]" (identifier "piVar21") ([ "[") (binary_expression "iVar16 * 2 + 2" (binary_expression "iVar16 * 2" (identifier "iVar16") (* "*") (number_literal "2")) (+ "+") (number_literal "2")) (] "]"))) (; ";")) (labeled_statement "LAB_000b2350:\n                      iVar16 = iVar16 + 1;" (statement_identifier "LAB_000b2350") (: ":") (expression_statement "iVar16 = iVar16 + 1;" (assignment_expression "iVar16 = iVar16 + 1" (identifier "iVar16") (= "=") (binary_expression "iVar16 + 1" (identifier "iVar16") (+ "+") (number_literal "1"))) (; ";"))) (if_statement "if (local_74 < iVar9) goto LAB_000b22d0;" (if "if") (parenthesized_expression "(local_74 < iVar9)" (( "(") (binary_expression "local_74 < iVar9" (identifier "local_74") (< "<") (identifier "iVar9")) () ")")) (goto_statement "goto LAB_000b22d0;" (goto "goto") (statement_identifier "LAB_000b22d0") (; ";"))) (} "}")) (else_clause "else if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" (else "else") (if_statement "if (piVar21[iVar16 * 2 + 1] == -1) {\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" (if "if") (parenthesized_expression "(piVar21[iVar16 * 2 + 1] == -1)" (( "(") (binary_expression "piVar21[iVar16 * 2 + 1] == -1" (subscript_expression "piVar21[iVar16 * 2 + 1]" (identifier "piVar21") ([ "[") (binary_expression "iVar16 * 2 + 1" (binary_expression "iVar16 * 2" (identifier "iVar16") (* "*") (number_literal "2")) (+ "+") (number_literal "1")) (] "]")) (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n                      if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }\n                      goto LAB_000b22d0;\n                    }" ({ "{") (if_statement "if (iVar16 + 1U < uVar4) {\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }" (if "if") (parenthesized_expression "(iVar16 + 1U < uVar4)" (( "(") (binary_expression "iVar16 + 1U < uVar4" (binary_expression "iVar16 + 1U" (identifier "iVar16") (+ "+") (number_literal "1U")) (< "<") (identifier "uVar4")) () ")")) (compound_statement "{\n                        iVar9 = piVar21[iVar16 * 2 + 2];\n                        goto LAB_000b2350;\n                      }" ({ "{") (expression_statement "iVar9 = piVar21[iVar16 * 2 + 2];" (assignment_expression "iVar9 = piVar21[iVar16 * 2 + 2]" (identifier "iVar9") (= "=") (subscript_expression "piVar21[iVar16 * 2 + 2]" (identifier "piVar21") ([ "[") (binary_expression "iVar16 * 2 + 2" (binary_expression "iVar16 * 2" (identifier "iVar16") (* "*") (number_literal "2")) (+ "+") (number_literal "2")) (] "]"))) (; ";")) (goto_statement "goto LAB_000b2350;" (goto "goto") (statement_identifier "LAB_000b2350") (; ";")) (} "}"))) (goto_statement "goto LAB_000b22d0;" (goto "goto") (statement_identifier "LAB_000b22d0") (; ";")) (} "}"))))) (} "}")) (while "while") (parenthesized_expression "(iVar9 < local_74)" (( "(") (binary_expression "iVar9 < local_74" (identifier "iVar9") (< "<") (identifier "local_74")) () ")")) (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_puts_0012afb4)(local_34);" (call_expression "(*(code *)PTR_puts_0012afb4)(local_34)" (parenthesized_expression "(*(code *)PTR_puts_0012afb4)" (( "(") (pointer_expression "*(code *)PTR_puts_0012afb4" (* "*") (cast_expression "(code *)PTR_puts_0012afb4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_puts_0012afb4"))) () ")")) (argument_list "(local_34)" (( "(") (identifier "local_34") () ")"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }" (else "else") (compound_statement "{\n              local_2f = 0;\n              local_30 = (char)puVar22;\n              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);\n              puVar3 = PTR_stdout_0012ae40;\n              if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }\n              if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }\n            }" ({ "{") (expression_statement "local_2f = 0;" (assignment_expression "local_2f = 0" (identifier "local_2f") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_30 = (char)puVar22;" (assignment_expression "local_30 = (char)puVar22" (identifier "local_30") (= "=") (cast_expression "(char)puVar22" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "puVar22"))) (; ";")) (expression_statement "iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);" (assignment_expression "iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_strchr_0012af54)(local_34,puVar22)" (parenthesized_expression "(*(code *)PTR_strchr_0012af54)" (( "(") (pointer_expression "*(code *)PTR_strchr_0012af54" (* "*") (cast_expression "(code *)PTR_strchr_0012af54" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strchr_0012af54"))) () ")")) (argument_list "(local_34,puVar22)" (( "(") (identifier "local_34") (, ",") (identifier "puVar22") () ")")))) (; ";")) (expression_statement "puVar3 = PTR_stdout_0012ae40;" (assignment_expression "puVar3 = PTR_stdout_0012ae40" (identifier "puVar3") (= "=") (identifier "PTR_stdout_0012ae40")) (; ";")) (if_statement "if (iVar9 != 0) {\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }" (if "if") (parenthesized_expression "(iVar9 != 0)" (( "(") (binary_expression "iVar9 != 0" (identifier "iVar9") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                iVar16 = 0;\n                iVar27 = -1;\n                local_68 = 1;\n                local_60 = 0;\n                iVar9 = iVar8;\n                local_70 = piVar21;\n                while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }\nLAB_000b252c:\n                iVar16 = *(int *)puVar3;\n                puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;\n                goto LAB_000b22bc;\n              }" ({ "{") (expression_statement "iVar16 = 0;" (assignment_expression "iVar16 = 0" (identifier "iVar16") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar27 = -1;" (assignment_expression "iVar27 = -1" (identifier "iVar27") (= "=") (number_literal "-1")) (; ";")) (expression_statement "local_68 = 1;" (assignment_expression "local_68 = 1" (identifier "local_68") (= "=") (number_literal "1")) (; ";")) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" (identifier "local_60") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar9 = iVar8;" (assignment_expression "iVar9 = iVar8" (identifier "iVar9") (= "=") (identifier "iVar8")) (; ";")) (expression_statement "local_70 = piVar21;" (assignment_expression "local_70 = piVar21" (identifier "local_70") (= "=") (identifier "piVar21")) (; ";")) (while_statement "while( true ) {\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n                  iVar29 = *local_70;\n                  do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);\n                  if (uVar4 <= local_68) break;\nLAB_000b24fc:\n                  local_70 = local_70 + 2;\n                  local_68 = local_68 + 1;\n                }" ({ "{") (expression_statement "iVar29 = *local_70;" (assignment_expression "iVar29 = *local_70" (identifier "iVar29") (= "=") (pointer_expression "*local_70" (* "*") (identifier "local_70"))) (; ";")) (do_statement "do {\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  } while (local_70[1] != -1);" (do "do") (compound_statement "{\n                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }\n                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }\n                    iVar29 = iVar29 + 1;\n                    iVar9 = local_34;\n                    if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }\n                    if (local_34 == 0) goto LAB_000b252c;\n                  }" ({ "{") (for_statement "for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }" (for "for") (( "(") (; ";") (parenthesized_expression "(iVar9 != 0 && (iVar27 < iVar29))" (( "(") (binary_expression "iVar9 != 0 && (iVar27 < iVar29)" (binary_expression "iVar9 != 0" (identifier "iVar9") (!= "!=") (number_literal "0")) (&& "&&") (parenthesized_expression "(iVar27 < iVar29)" (( "(") (binary_expression "iVar27 < iVar29" (identifier "iVar27") (< "<") (identifier "iVar29")) () ")"))) () ")")) (; ";") (assignment_expression "iVar27 = iVar27 + 1" (identifier "iVar27") (= "=") (binary_expression "iVar27 + 1" (identifier "iVar27") (+ "+") (number_literal "1"))) () ")") (compound_statement "{\n                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);\n                      iVar9 = local_34;\n                    }" ({ "{") (expression_statement "iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);" (assignment_expression "iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30)" (identifier "iVar16") (= "=") (call_expression "(*(code *)PTR_strsep_0012afa0)(piVar23,&local_30)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" (( "(") (pointer_expression "*(code *)PTR_strsep_0012afa0" (* "*") (cast_expression "(code *)PTR_strsep_0012afa0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strsep_0012afa0"))) () ")")) (argument_list "(piVar23,&local_30)" (( "(") (identifier "piVar23") (, ",") (pointer_expression "&local_30" (& "&") (identifier "local_30")) () ")")))) (; ";")) (expression_statement "iVar9 = local_34;" (assignment_expression "iVar9 = local_34" (identifier "iVar9") (= "=") (identifier "local_34")) (; ";")) (} "}"))) (if_statement "if (((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')) {\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }" (if "if") (parenthesized_expression "(((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0'))" (( "(") (binary_expression "((iVar16 != 0) && (iVar27 == iVar29)) &&\n                       (*(char *)(iVar10 + iVar27) == '\0')" (parenthesized_expression "((iVar16 != 0) && (iVar27 == iVar29))" (( "(") (binary_expression "(iVar16 != 0) && (iVar27 == iVar29)" (parenthesized_expression "(iVar16 != 0)" (( "(") (binary_expression "iVar16 != 0" (identifier "iVar16") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar27 == iVar29)" (( "(") (binary_expression "iVar27 == iVar29" (identifier "iVar27") (== "==") (identifier "iVar29")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(char *)(iVar10 + iVar27) == '\0')" (( "(") (binary_expression "*(char *)(iVar10 + iVar27) == '\0'" (pointer_expression "*(char *)(iVar10 + iVar27)" (* "*") (cast_expression "(char *)(iVar10 + iVar27)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + iVar27)" (( "(") (binary_expression "iVar10 + iVar27" (identifier "iVar10") (+ "+") (identifier "iVar27")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                      iVar9 = *(int *)puVar3;\n                      if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }\n                      local_60 = local_60 + 1;\n                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);\n                      *(char *)(iVar10 + iVar27) = 'X';\n                    }" ({ "{") (expression_statement "iVar9 = *(int *)puVar3;" (assignment_expression "iVar9 = *(int *)puVar3" (identifier "iVar9") (= "=") (pointer_expression "*(int *)puVar3" (* "*") (cast_expression "(int *)puVar3" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar3")))) (; ";")) (if_statement "if (local_60 != 0) {\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }" (if "if") (parenthesized_expression "(local_60 != 0)" (( "(") (binary_expression "local_60 != 0" (identifier "local_60") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                        puVar11 = *(undefined1 **)(iVar9 + 0x14);\n                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }\n                      }" ({ "{") (expression_statement "puVar11 = *(undefined1 **)(iVar9 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar9 + 0x14)" (identifier "puVar11") (= "=") (pointer_expression "*(undefined1 **)(iVar9 + 0x14)" (* "*") (cast_expression "(undefined1 **)(iVar9 + 0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 0x14)" (( "(") (binary_expression "iVar9 + 0x14" (identifier "iVar9") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (if_statement "if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }\n                        else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }" (if "if") (parenthesized_expression "(puVar11 < *(undefined1 **)(iVar9 + 0x18))" (( "(") (binary_expression "puVar11 < *(undefined1 **)(iVar9 + 0x18)" (identifier "puVar11") (< "<") (pointer_expression "*(undefined1 **)(iVar9 + 0x18)" (* "*") (cast_expression "(undefined1 **)(iVar9 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 0x18)" (( "(") (binary_expression "iVar9 + 0x18" (identifier "iVar9") (+ "+") (number_literal "0x18")) () ")"))))) () ")")) (compound_statement "{\n                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;\n                          *puVar11 = (char)puVar22;\n                          iVar9 = *(int *)puVar3;\n                        }" ({ "{") (expression_statement "*(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;" (assignment_expression "*(undefined1 **)(iVar9 + 0x14) = puVar11 + 1" (pointer_expression "*(undefined1 **)(iVar9 + 0x14)" (* "*") (cast_expression "(undefined1 **)(iVar9 + 0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 0x14)" (( "(") (binary_expression "iVar9 + 0x14" (identifier "iVar9") (+ "+") (number_literal "0x14")) () ")")))) (= "=") (binary_expression "puVar11 + 1" (identifier "puVar11") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*puVar11 = (char)puVar22;" (assignment_expression "*puVar11 = (char)puVar22" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (= "=") (cast_expression "(char)puVar22" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "puVar22"))) (; ";")) (expression_statement "iVar9 = *(int *)puVar3;" (assignment_expression "iVar9 = *(int *)puVar3" (identifier "iVar9") (= "=") (pointer_expression "*(int *)puVar3" (* "*") (cast_expression "(int *)puVar3" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar3")))) (; ";")) (} "}")) (else_clause "else {\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }" (else "else") (compound_statement "{\n                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);\n                          iVar9 = *(int *)puVar3;\n                        }" ({ "{") (expression_statement "(*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);" (call_expression "(*(code *)PTR___overflow_0012ada8)(iVar9,puVar22)" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" (( "(") (pointer_expression "*(code *)PTR___overflow_0012ada8" (* "*") (cast_expression "(code *)PTR___overflow_0012ada8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___overflow_0012ada8"))) () ")")) (argument_list "(iVar9,puVar22)" (( "(") (identifier "iVar9") (, ",") (identifier "puVar22") () ")"))) (; ";")) (expression_statement "iVar9 = *(int *)puVar3;" (assignment_expression "iVar9 = *(int *)puVar3" (identifier "iVar9") (= "=") (pointer_expression "*(int *)puVar3" (* "*") (cast_expression "(int *)puVar3" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar3")))) (; ";")) (} "}")))) (} "}"))) (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"))) (; ";")) (expression_statement "(*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);" (call_expression "(*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9)" (parenthesized_expression "(*(code *)PTR_fputs_unlocked_0012b204)" (( "(") (pointer_expression "*(code *)PTR_fputs_unlocked_0012b204" (* "*") (cast_expression "(code *)PTR_fputs_unlocked_0012b204" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_fputs_unlocked_0012b204"))) () ")")) (argument_list "(iVar16,iVar9)" (( "(") (identifier "iVar16") (, ",") (identifier "iVar9") () ")"))) (; ";")) (expression_statement "*(char *)(iVar10 + iVar27) = 'X';" (assignment_expression "*(char *)(iVar10 + iVar27) = 'X'" (pointer_expression "*(char *)(iVar10 + iVar27)" (* "*") (cast_expression "(char *)(iVar10 + iVar27)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + iVar27)" (( "(") (binary_expression "iVar10 + iVar27" (identifier "iVar10") (+ "+") (identifier "iVar27")) () ")")))) (= "=") (char_literal "'X'" (' "'") (character "X") (' "'"))) (; ";")) (} "}"))) (expression_statement "iVar29 = iVar29 + 1;" (assignment_expression "iVar29 = iVar29 + 1" (identifier "iVar29") (= "=") (binary_expression "iVar29 + 1" (identifier "iVar29") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar9 = local_34;" (assignment_expression "iVar9 = local_34" (identifier "iVar9") (= "=") (identifier "local_34")) (; ";")) (if_statement "if (local_70[1] < iVar29) {\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }" (if "if") (parenthesized_expression "(local_70[1] < iVar29)" (( "(") (binary_expression "local_70[1] < iVar29" (subscript_expression "local_70[1]" (identifier "local_70") ([ "[") (number_literal "1") (] "]")) (< "<") (identifier "iVar29")) () ")")) (compound_statement "{\n                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;\n                      goto LAB_000b24fc;\n                    }" ({ "{") (if_statement "if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;" (if "if") (parenthesized_expression "((uVar4 <= local_68) || (local_34 == 0))" (( "(") (binary_expression "(uVar4 <= local_68) || (local_34 == 0)" (parenthesized_expression "(uVar4 <= local_68)" (( "(") (binary_expression "uVar4 <= local_68" (identifier "uVar4") (<= "<=") (identifier "local_68")) () ")")) (|| "||") (parenthesized_expression "(local_34 == 0)" (( "(") (binary_expression "local_34 == 0" (identifier "local_34") (== "==") (number_literal "0")) () ")"))) () ")")) (goto_statement "goto LAB_000b252c;" (goto "goto") (statement_identifier "LAB_000b252c") (; ";"))) (goto_statement "goto LAB_000b24fc;" (goto "goto") (statement_identifier "LAB_000b24fc") (; ";")) (} "}"))) (if_statement "if (local_34 == 0) goto LAB_000b252c;" (if "if") (parenthesized_expression "(local_34 == 0)" (( "(") (binary_expression "local_34 == 0" (identifier "local_34") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000b252c;" (goto "goto") (statement_identifier "LAB_000b252c") (; ";"))) (} "}")) (while "while") (parenthesized_expression "(local_70[1] != -1)" (( "(") (binary_expression "local_70[1] != -1" (subscript_expression "local_70[1]" (identifier "local_70") ([ "[") (number_literal "1") (] "]")) (!= "!=") (number_literal "-1")) () ")")) (; ";")) (if_statement "if (uVar4 <= local_68) break;" (if "if") (parenthesized_expression "(uVar4 <= local_68)" (( "(") (binary_expression "uVar4 <= local_68" (identifier "uVar4") (<= "<=") (identifier "local_68")) () ")")) (break_statement "break;" (break "break") (; ";"))) (labeled_statement "LAB_000b24fc:\n                  local_70 = local_70 + 2;" (statement_identifier "LAB_000b24fc") (: ":") (expression_statement "local_70 = local_70 + 2;" (assignment_expression "local_70 = local_70 + 2" (identifier "local_70") (= "=") (binary_expression "local_70 + 2" (identifier "local_70") (+ "+") (number_literal "2"))) (; ";"))) (expression_statement "local_68 = local_68 + 1;" (assignment_expression "local_68 = local_68 + 1" (identifier "local_68") (= "=") (binary_expression "local_68 + 1" (identifier "local_68") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (labeled_statement "LAB_000b252c:\n                iVar16 = *(int *)puVar3;" (statement_identifier "LAB_000b252c") (: ":") (expression_statement "iVar16 = *(int *)puVar3;" (assignment_expression "iVar16 = *(int *)puVar3" (identifier "iVar16") (= "=") (pointer_expression "*(int *)puVar3" (* "*") (cast_expression "(int *)puVar3" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar3")))) (; ";"))) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" (identifier "puVar11") (= "=") (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" (* "*") (cast_expression "(undefined1 **)(iVar16 + 0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar16 + 0x14)" (( "(") (binary_expression "iVar16 + 0x14" (identifier "iVar16") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (if_statement "if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;" (if "if") (parenthesized_expression "(puVar11 < *(undefined1 **)(iVar16 + 0x18))" (( "(") (binary_expression "puVar11 < *(undefined1 **)(iVar16 + 0x18)" (identifier "puVar11") (< "<") (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" (* "*") (cast_expression "(undefined1 **)(iVar16 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar16 + 0x18)" (( "(") (binary_expression "iVar16 + 0x18" (identifier "iVar16") (+ "+") (number_literal "0x18")) () ")"))))) () ")")) (goto_statement "goto LAB_000b2544;" (goto "goto") (statement_identifier "LAB_000b2544") (; ";"))) (goto_statement "goto LAB_000b22bc;" (goto "goto") (statement_identifier "LAB_000b22bc") (; ";")) (} "}"))) (if_statement "if ((uVar26 & 0x10) == 0) {\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }" (if "if") (parenthesized_expression "((uVar26 & 0x10) == 0)" (( "(") (binary_expression "(uVar26 & 0x10) == 0" (parenthesized_expression "(uVar26 & 0x10)" (( "(") (binary_expression "uVar26 & 0x10" (identifier "uVar26") (& "&") (number_literal "0x10")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                (*(code *)PTR_puts_0012afb4)(iVar8);\n              }" ({ "{") (expression_statement "(*(code *)PTR_puts_0012afb4)(iVar8);" (call_expression "(*(code *)PTR_puts_0012afb4)(iVar8)" (parenthesized_expression "(*(code *)PTR_puts_0012afb4)" (( "(") (pointer_expression "*(code *)PTR_puts_0012afb4" (* "*") (cast_expression "(code *)PTR_puts_0012afb4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_puts_0012afb4"))) () ")")) (argument_list "(iVar8)" (( "(") (identifier "iVar8") () ")"))) (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }" (else "else") (compound_statement "{\n            iVar16 = *(int *)PTR_stdout_0012ae40;\n            puVar11 = *(undefined1 **)(iVar16 + 0x14);\n            puVar15 = *(undefined1 **)(iVar16 + 0x18);\n            piVar28 = piVar21;\n            do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);\n            bVar2 = puVar11 < puVar15;\nLAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }\n          }" ({ "{") (expression_statement "iVar16 = *(int *)PTR_stdout_0012ae40;" (assignment_expression "iVar16 = *(int *)PTR_stdout_0012ae40" (identifier "iVar16") (= "=") (pointer_expression "*(int *)PTR_stdout_0012ae40" (* "*") (cast_expression "(int *)PTR_stdout_0012ae40" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdout_0012ae40")))) (; ";")) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" (identifier "puVar11") (= "=") (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" (* "*") (cast_expression "(undefined1 **)(iVar16 + 0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar16 + 0x14)" (( "(") (binary_expression "iVar16 + 0x14" (identifier "iVar16") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (expression_statement "puVar15 = *(undefined1 **)(iVar16 + 0x18);" (assignment_expression "puVar15 = *(undefined1 **)(iVar16 + 0x18)" (identifier "puVar15") (= "=") (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" (* "*") (cast_expression "(undefined1 **)(iVar16 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar16 + 0x18)" (( "(") (binary_expression "iVar16 + 0x18" (identifier "iVar16") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "piVar28 = piVar21;" (assignment_expression "piVar28 = piVar21" (identifier "piVar28") (= "=") (identifier "piVar21")) (; ";")) (do_statement "do {\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            } while (piVar21 + uVar4 * 2 != piVar28);" (do "do") (compound_statement "{\n              while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }\n              pcVar7 = (char *)(iVar10 + iVar27);\n              do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);\n              piVar28 = piVar28 + 2;\n            }" ({ "{") (while_statement "while (iVar27 = *piVar28, iVar9 <= iVar27) {\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }" (while "while") (parenthesized_expression "(iVar27 = *piVar28, iVar9 <= iVar27)" (( "(") (comma_expression "iVar27 = *piVar28, iVar9 <= iVar27" (assignment_expression "iVar27 = *piVar28" (identifier "iVar27") (= "=") (pointer_expression "*piVar28" (* "*") (identifier "piVar28"))) (, ",") (binary_expression "iVar9 <= iVar27" (identifier "iVar9") (<= "<=") (identifier "iVar27"))) () ")")) (compound_statement "{\nLAB_000b22a0:\n                piVar28 = piVar28 + 2;\n                if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }\n              }" ({ "{") (labeled_statement "LAB_000b22a0:\n                piVar28 = piVar28 + 2;" (statement_identifier "LAB_000b22a0") (: ":") (expression_statement "piVar28 = piVar28 + 2;" (assignment_expression "piVar28 = piVar28 + 2" (identifier "piVar28") (= "=") (binary_expression "piVar28 + 2" (identifier "piVar28") (+ "+") (number_literal "2"))) (; ";"))) (if_statement "if (piVar21 + uVar4 * 2 == piVar28) {\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }" (if "if") (parenthesized_expression "(piVar21 + uVar4 * 2 == piVar28)" (( "(") (binary_expression "piVar21 + uVar4 * 2 == piVar28" (binary_expression "piVar21 + uVar4 * 2" (identifier "piVar21") (+ "+") (binary_expression "uVar4 * 2" (identifier "uVar4") (* "*") (number_literal "2"))) (== "==") (identifier "piVar28")) () ")")) (compound_statement "{\n                  bVar2 = puVar11 < puVar15;\n                  goto LAB_000b22b4;\n                }" ({ "{") (expression_statement "bVar2 = puVar11 < puVar15;" (assignment_expression "bVar2 = puVar11 < puVar15" (identifier "bVar2") (= "=") (binary_expression "puVar11 < puVar15" (identifier "puVar11") (< "<") (identifier "puVar15"))) (; ";")) (goto_statement "goto LAB_000b22b4;" (goto "goto") (statement_identifier "LAB_000b22b4") (; ";")) (} "}"))) (} "}"))) (expression_statement "pcVar7 = (char *)(iVar10 + iVar27);" (assignment_expression "pcVar7 = (char *)(iVar10 + iVar27)" (identifier "pcVar7") (= "=") (cast_expression "(char *)(iVar10 + iVar27)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar10 + iVar27)" (( "(") (binary_expression "iVar10 + iVar27" (identifier "iVar10") (+ "+") (identifier "iVar27")) () ")")))) (; ";")) (do_statement "do {\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              } while (iVar9 != iVar27);" (do "do") (compound_statement "{\n                if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                iVar27 = iVar27 + 1;\n                pcVar7 = pcVar7 + 1;\n              }" ({ "{") (if_statement "if (*pcVar7 == '\0') {\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }\n                else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" (if "if") (parenthesized_expression "(*pcVar7 == '\0')" (( "(") (binary_expression "*pcVar7 == '\0'" (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                  *pcVar7 = 'X';\n                  uVar1 = *(undefined1 *)(local_34 + iVar27);\n                  if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }\n                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n                  *puVar11 = uVar1;\n                  iVar16 = *(int *)puVar3;\n                  puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                  puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" ({ "{") (expression_statement "*pcVar7 = 'X';" (assignment_expression "*pcVar7 = 'X'" (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) (= "=") (char_literal "'X'" (' "'") (character "X") (' "'"))) (; ";")) (expression_statement "uVar1 = *(undefined1 *)(local_34 + iVar27);" (assignment_expression "uVar1 = *(undefined1 *)(local_34 + iVar27)" (identifier "uVar1") (= "=") (pointer_expression "*(undefined1 *)(local_34 + iVar27)" (* "*") (cast_expression "(undefined1 *)(local_34 + iVar27)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_34 + iVar27)" (( "(") (binary_expression "local_34 + iVar27" (identifier "local_34") (+ "+") (identifier "iVar27")) () ")"))))) (; ";")) (if_statement "if (puVar15 <= puVar11) {\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }" (if "if") (parenthesized_expression "(puVar15 <= puVar11)" (( "(") (binary_expression "puVar15 <= puVar11" (identifier "puVar15") (<= "<=") (identifier "puVar11")) () ")")) (compound_statement "{\n                    (*(code *)PTR___overflow_0012ada8)();\n                    iVar16 = *(int *)puVar3;\n                    puVar11 = *(undefined1 **)(iVar16 + 0x14);\n                    puVar15 = *(undefined1 **)(iVar16 + 0x18);\n                    goto LAB_000b228c;\n                  }" ({ "{") (expression_statement "(*(code *)PTR___overflow_0012ada8)();" (call_expression "(*(code *)PTR___overflow_0012ada8)()" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" (( "(") (pointer_expression "*(code *)PTR___overflow_0012ada8" (* "*") (cast_expression "(code *)PTR___overflow_0012ada8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___overflow_0012ada8"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar16 = *(int *)puVar3;" (assignment_expression "iVar16 = *(int *)puVar3" (identifier "iVar16") (= "=") (pointer_expression "*(int *)puVar3" (* "*") (cast_expression "(int *)puVar3" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar3")))) (; ";")) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" (identifier "puVar11") (= "=") (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" (* "*") (cast_expression "(undefined1 **)(iVar16 + 0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar16 + 0x14)" (( "(") (binary_expression "iVar16 + 0x14" (identifier "iVar16") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (expression_statement "puVar15 = *(undefined1 **)(iVar16 + 0x18);" (assignment_expression "puVar15 = *(undefined1 **)(iVar16 + 0x18)" (identifier "puVar15") (= "=") (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" (* "*") (cast_expression "(undefined1 **)(iVar16 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar16 + 0x18)" (( "(") (binary_expression "iVar16 + 0x18" (identifier "iVar16") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (goto_statement "goto LAB_000b228c;" (goto "goto") (statement_identifier "LAB_000b228c") (; ";")) (} "}"))) (expression_statement "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;" (assignment_expression "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1" (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" (* "*") (cast_expression "(undefined1 **)(iVar16 + 0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar16 + 0x14)" (( "(") (binary_expression "iVar16 + 0x14" (identifier "iVar16") (+ "+") (number_literal "0x14")) () ")")))) (= "=") (binary_expression "puVar11 + 1" (identifier "puVar11") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*puVar11 = uVar1;" (assignment_expression "*puVar11 = uVar1" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (= "=") (identifier "uVar1")) (; ";")) (expression_statement "iVar16 = *(int *)puVar3;" (assignment_expression "iVar16 = *(int *)puVar3" (identifier "iVar16") (= "=") (pointer_expression "*(int *)puVar3" (* "*") (cast_expression "(int *)puVar3" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar3")))) (; ";")) (expression_statement "puVar11 = *(undefined1 **)(iVar16 + 0x14);" (assignment_expression "puVar11 = *(undefined1 **)(iVar16 + 0x14)" (identifier "puVar11") (= "=") (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" (* "*") (cast_expression "(undefined1 **)(iVar16 + 0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar16 + 0x14)" (( "(") (binary_expression "iVar16 + 0x14" (identifier "iVar16") (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (expression_statement "puVar15 = *(undefined1 **)(iVar16 + 0x18);" (assignment_expression "puVar15 = *(undefined1 **)(iVar16 + 0x18)" (identifier "puVar15") (= "=") (pointer_expression "*(undefined1 **)(iVar16 + 0x18)" (* "*") (cast_expression "(undefined1 **)(iVar16 + 0x18)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar16 + 0x18)" (( "(") (binary_expression "iVar16 + 0x18" (identifier "iVar16") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (if_statement "if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" (if "if") (parenthesized_expression "(piVar28[1] < iVar27 + 1)" (( "(") (binary_expression "piVar28[1] < iVar27 + 1" (subscript_expression "piVar28[1]" (identifier "piVar28") ([ "[") (number_literal "1") (] "]")) (< "<") (binary_expression "iVar27 + 1" (identifier "iVar27") (+ "+") (number_literal "1"))) () ")")) (goto_statement "goto LAB_000b22a0;" (goto "goto") (statement_identifier "LAB_000b22a0") (; ";"))) (} "}")) (else_clause "else {\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" (else "else") (compound_statement "{\nLAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;\n                }" ({ "{") (labeled_statement "LAB_000b228c:\n                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" (statement_identifier "LAB_000b228c") (: ":") (if_statement "if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;" (if "if") (parenthesized_expression "(piVar28[1] < iVar27 + 1)" (( "(") (binary_expression "piVar28[1] < iVar27 + 1" (subscript_expression "piVar28[1]" (identifier "piVar28") ([ "[") (number_literal "1") (] "]")) (< "<") (binary_expression "iVar27 + 1" (identifier "iVar27") (+ "+") (number_literal "1"))) () ")")) (goto_statement "goto LAB_000b22a0;" (goto "goto") (statement_identifier "LAB_000b22a0") (; ";")))) (} "}")))) (expression_statement "iVar27 = iVar27 + 1;" (assignment_expression "iVar27 = iVar27 + 1" (identifier "iVar27") (= "=") (binary_expression "iVar27 + 1" (identifier "iVar27") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pcVar7 = pcVar7 + 1;" (assignment_expression "pcVar7 = pcVar7 + 1" (identifier "pcVar7") (= "=") (binary_expression "pcVar7 + 1" (identifier "pcVar7") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar9 != iVar27)" (( "(") (binary_expression "iVar9 != iVar27" (identifier "iVar9") (!= "!=") (identifier "iVar27")) () ")")) (; ";")) (expression_statement "piVar28 = piVar28 + 2;" (assignment_expression "piVar28 = piVar28 + 2" (identifier "piVar28") (= "=") (binary_expression "piVar28 + 2" (identifier "piVar28") (+ "+") (number_literal "2"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(piVar21 + uVar4 * 2 != piVar28)" (( "(") (binary_expression "piVar21 + uVar4 * 2 != piVar28" (binary_expression "piVar21 + uVar4 * 2" (identifier "piVar21") (+ "+") (binary_expression "uVar4 * 2" (identifier "uVar4") (* "*") (number_literal "2"))) (!= "!=") (identifier "piVar28")) () ")")) (; ";")) (expression_statement "bVar2 = puVar11 < puVar15;" (assignment_expression "bVar2 = puVar11 < puVar15" (identifier "bVar2") (= "=") (binary_expression "puVar11 < puVar15" (identifier "puVar11") (< "<") (identifier "puVar15"))) (; ";")) (labeled_statement "LAB_000b22b4:\n            if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" (statement_identifier "LAB_000b22b4") (: ":") (if_statement "if (bVar2) {\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }\n            else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" (if "if") (parenthesized_expression "(bVar2)" (( "(") (identifier "bVar2") () ")")) (compound_statement "{\nLAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;\n              *puVar11 = 10;\n            }" ({ "{") (labeled_statement "LAB_000b2544:\n              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;" (statement_identifier "LAB_000b2544") (: ":") (expression_statement "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;" (assignment_expression "*(undefined1 **)(iVar16 + 0x14) = puVar11 + 1" (pointer_expression "*(undefined1 **)(iVar16 + 0x14)" (* "*") (cast_expression "(undefined1 **)(iVar16 + 0x14)" (( "(") (type_descriptor "undefined1 **" (type_identifier "undefined1") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar16 + 0x14)" (( "(") (binary_expression "iVar16 + 0x14" (identifier "iVar16") (+ "+") (number_literal "0x14")) () ")")))) (= "=") (binary_expression "puVar11 + 1" (identifier "puVar11") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "*puVar11 = 10;" (assignment_expression "*puVar11 = 10" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (= "=") (number_literal "10")) (; ";")) (} "}")) (else_clause "else {\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" (else "else") (compound_statement "{\nLAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);\n            }" ({ "{") (labeled_statement "LAB_000b22bc:\n              (*(code *)PTR___overflow_0012ada8)(iVar16,10);" (statement_identifier "LAB_000b22bc") (: ":") (expression_statement "(*(code *)PTR___overflow_0012ada8)(iVar16,10);" (call_expression "(*(code *)PTR___overflow_0012ada8)(iVar16,10)" (parenthesized_expression "(*(code *)PTR___overflow_0012ada8)" (( "(") (pointer_expression "*(code *)PTR___overflow_0012ada8" (* "*") (cast_expression "(code *)PTR___overflow_0012ada8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___overflow_0012ada8"))) () ")")) (argument_list "(iVar16,10)" (( "(") (identifier "iVar16") (, ",") (number_literal "10") () ")"))) (; ";"))) (} "}"))))) (} "}")))) (labeled_statement "LAB_000b22d0:\n          local_74 = local_74 + 1;" (statement_identifier "LAB_000b22d0") (: ":") (expression_statement "local_74 = local_74 + 1;" (assignment_expression "local_74 = local_74 + 1" (identifier "local_74") (= "=") (binary_expression "local_74 + 1" (identifier "local_74") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "(*(code *)PTR_free_0012b168)(iVar10);" (call_expression "(*(code *)PTR_free_0012b168)(iVar10)" (parenthesized_expression "(*(code *)PTR_free_0012b168)" (( "(") (pointer_expression "*(code *)PTR_free_0012b168" (* "*") (cast_expression "(code *)PTR_free_0012b168" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_0012b168"))) () ")")) (argument_list "(iVar10)" (( "(") (identifier "iVar10") () ")"))) (; ";")) (expression_statement "(*(code *)PTR_free_0012b168)(iVar8);" (call_expression "(*(code *)PTR_free_0012b168)(iVar8)" (parenthesized_expression "(*(code *)PTR_free_0012b168)" (( "(") (pointer_expression "*(code *)PTR_free_0012b168" (* "*") (cast_expression "(code *)PTR_free_0012b168" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_0012b168"))) () ")")) (argument_list "(iVar8)" (( "(") (identifier "iVar8") () ")"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "(*local_38 == 0)" (( "(") (binary_expression "*local_38 == 0" (pointer_expression "*local_38" (* "*") (identifier "local_38")) (== "==") (number_literal "0")) () ")")) (; ";")) (expression_statement "pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);" (assignment_expression "pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6)" (identifier "pcVar7") (= "=") (cast_expression "(char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6)" (parenthesized_expression "(*(code *)PTR_strsep_0012afa0)" (( "(") (pointer_expression "*(code *)PTR_strsep_0012afa0" (* "*") (cast_expression "(code *)PTR_strsep_0012afa0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strsep_0012afa0"))) () ")")) (argument_list "(&local_38,puVar6)" (( "(") (pointer_expression "&local_38" (& "&") (identifier "local_38")) (, ",") (identifier "puVar6") () ")"))))) (; ";")) (if_statement "if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }\n    else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }" (if "if") (parenthesized_expression "((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0))" (( "(") (binary_expression "(*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)" (parenthesized_expression "(*pcVar7 == '\0')" (( "(") (binary_expression "*pcVar7 == '\0'" (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (|| "||") (parenthesized_expression "(iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)" (( "(") (comma_expression "iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0" (assignment_expression "iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7)" (identifier "iVar12") (= "=") (call_expression "(*(code *)PTR_FUN_0012a3e8)(pcVar7)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3e8)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a3e8" (* "*") (cast_expression "(code *)PTR_FUN_0012a3e8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a3e8"))) () ")")) (argument_list "(pcVar7)" (( "(") (identifier "pcVar7") () ")")))) (, ",") (binary_expression "iVar12 == 0" (identifier "iVar12") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n      piVar25 = (int *)0x0;\n      if (local_38 != (byte *)0x0) goto LAB_000b25f8;\nLAB_000b20c8:\n      piVar23 = (int *)0xffffffff;\n    }" ({ "{") (expression_statement "piVar25 = (int *)0x0;" (assignment_expression "piVar25 = (int *)0x0" (identifier "piVar25") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (if_statement "if (local_38 != (byte *)0x0) goto LAB_000b25f8;" (if "if") (parenthesized_expression "(local_38 != (byte *)0x0)" (( "(") (binary_expression "local_38 != (byte *)0x0" (identifier "local_38") (!= "!=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000b25f8;" (goto "goto") (statement_identifier "LAB_000b25f8") (; ";"))) (labeled_statement "LAB_000b20c8:\n      piVar23 = (int *)0xffffffff;" (statement_identifier "LAB_000b20c8") (: ":") (expression_statement "piVar23 = (int *)0xffffffff;" (assignment_expression "piVar23 = (int *)0xffffffff" (identifier "piVar23") (= "=") (cast_expression "(int *)0xffffffff" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffffffff"))) (; ";"))) (} "}")) (else_clause "else {\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }" (else "else") (compound_statement "{\n      piVar25 = (int *)(iVar12 + -1);\n      if (local_38 == (byte *)0x0) goto LAB_000b20c8;\nLAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;\n      if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }\n    }" ({ "{") (expression_statement "piVar25 = (int *)(iVar12 + -1);" (assignment_expression "piVar25 = (int *)(iVar12 + -1)" (identifier "piVar25") (= "=") (cast_expression "(int *)(iVar12 + -1)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar12 + -1)" (( "(") (binary_expression "iVar12 + -1" (identifier "iVar12") (+ "+") (number_literal "-1")) () ")")))) (; ";")) (if_statement "if (local_38 == (byte *)0x0) goto LAB_000b20c8;" (if "if") (parenthesized_expression "(local_38 == (byte *)0x0)" (( "(") (binary_expression "local_38 == (byte *)0x0" (identifier "local_38") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_000b20c8;" (goto "goto") (statement_identifier "LAB_000b20c8") (; ";"))) (labeled_statement "LAB_000b25f8:\n      piVar23 = (int *)0x7fffffff;" (statement_identifier "LAB_000b25f8") (: ":") (expression_statement "piVar23 = (int *)0x7fffffff;" (assignment_expression "piVar23 = (int *)0x7fffffff" (identifier "piVar23") (= "=") (cast_expression "(int *)0x7fffffff" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x7fffffff"))) (; ";"))) (if_statement "if (*local_38 != 0) {\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }" (if "if") (parenthesized_expression "(*local_38 != 0)" (( "(") (binary_expression "*local_38 != 0" (pointer_expression "*local_38" (* "*") (identifier "local_38")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        piVar23 = (int *)0x7ffffffe;\n        iVar12 = (*(code *)PTR_FUN_0012a3e8)();\n        if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }\n        if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }\n      }" ({ "{") (expression_statement "piVar23 = (int *)0x7ffffffe;" (assignment_expression "piVar23 = (int *)0x7ffffffe" (identifier "piVar23") (= "=") (cast_expression "(int *)0x7ffffffe" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x7ffffffe"))) (; ";")) (expression_statement "iVar12 = (*(code *)PTR_FUN_0012a3e8)();" (assignment_expression "iVar12 = (*(code *)PTR_FUN_0012a3e8)()" (identifier "iVar12") (= "=") (call_expression "(*(code *)PTR_FUN_0012a3e8)()" (parenthesized_expression "(*(code *)PTR_FUN_0012a3e8)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a3e8" (* "*") (cast_expression "(code *)PTR_FUN_0012a3e8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a3e8"))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar12 != 0) {\n          piVar23 = (int *)(iVar12 + -1);\n        }" (if "if") (parenthesized_expression "(iVar12 != 0)" (( "(") (binary_expression "iVar12 != 0" (identifier "iVar12") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          piVar23 = (int *)(iVar12 + -1);\n        }" ({ "{") (expression_statement "piVar23 = (int *)(iVar12 + -1);" (assignment_expression "piVar23 = (int *)(iVar12 + -1)" (identifier "piVar23") (= "=") (cast_expression "(int *)(iVar12 + -1)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar12 + -1)" (( "(") (binary_expression "iVar12 + -1" (identifier "iVar12") (+ "+") (number_literal "-1")) () ")")))) (; ";")) (} "}"))) (if_statement "if (piVar25 == piVar23) {\n          piVar23 = (int *)0xffffffff;\n        }" (if "if") (parenthesized_expression "(piVar25 == piVar23)" (( "(") (binary_expression "piVar25 == piVar23" (identifier "piVar25") (== "==") (identifier "piVar23")) () ")")) (compound_statement "{\n          piVar23 = (int *)0xffffffff;\n        }" ({ "{") (expression_statement "piVar23 = (int *)0xffffffff;" (assignment_expression "piVar23 = (int *)0xffffffff" (identifier "piVar23") (= "=") (cast_expression "(int *)0xffffffff" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0xffffffff"))) (; ";")) (} "}"))) (} "}"))) (} "}")))) (expression_statement "piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);" (assignment_expression "piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4)" (identifier "piVar21") (= "=") (cast_expression "(int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4)" (parenthesized_expression "(*(code *)PTR_FUN_0012a3b8)" (( "(") (pointer_expression "*(code *)PTR_FUN_0012a3b8" (* "*") (cast_expression "(code *)PTR_FUN_0012a3b8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_FUN_0012a3b8"))) () ")")) (argument_list "(piVar21,0x804,uVar4)" (( "(") (identifier "piVar21") (, ",") (number_literal "0x804") (, ",") (identifier "uVar4") () ")"))))) (; ";")) (expression_statement "iVar12 = uVar4 * 2;" (assignment_expression "iVar12 = uVar4 * 2" (identifier "iVar12") (= "=") (binary_expression "uVar4 * 2" (identifier "uVar4") (* "*") (number_literal "2"))) (; ";")) (expression_statement "uVar4 = uVar4 + 1;" (assignment_expression "uVar4 = uVar4 + 1" (identifier "uVar4") (= "=") (binary_expression "uVar4 + 1" (identifier "uVar4") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "piVar21[iVar12] = (int)piVar25;" (assignment_expression "piVar21[iVar12] = (int)piVar25" (subscript_expression "piVar21[iVar12]" (identifier "piVar21") ([ "[") (identifier "iVar12") (] "]")) (= "=") (cast_expression "(int)piVar25" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar25"))) (; ";")) (expression_statement "(piVar21 + iVar12)[1] = (int)piVar23;" (assignment_expression "(piVar21 + iVar12)[1] = (int)piVar23" (subscript_expression "(piVar21 + iVar12)[1]" (parenthesized_expression "(piVar21 + iVar12)" (( "(") (binary_expression "piVar21 + iVar12" (identifier "piVar21") (+ "+") (identifier "iVar12")) () ")")) ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(int)piVar23" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "piVar23"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}")))

int function_1(int argc,char **var_26)

{
  char cVar1;
  bool bVar2;
  type_1 *puVar3;
  type_2 var_2;
  int var_12;
  type_1 *var_8;
  type_1 *var_11;
  char *pcVar8;
  char *var_31;
  int var_22;
  type_2 var_16;
  type_2 var_17;
  char *var_38;
  int var_33;
  type_3 *var_14;
  type_4 *var_15;
  char *var_39;
  type_3 *var_13;
  type_3 *pbVar19;
  char **var_28;
  int *var_37;
  type_4 *var_7;
  int var_19;
  type_4 *puVar24;
  int var_10;
  type_2 var_25;
  int var_21;
  int *var_36;
  type_5 *pcVar29;
  type_6 uVar30;
  type_3 *var_18;
  type_4 uStack_1e8;
  type_4 uStack_1e4;
  int var_9;
  type_4 auStack_1dc [2];
  type_4 uStack_1d4;
  type_4 uStack_1d0;
  type_4 uStack_1cc;
  type_4 uStack_1b4;
  type_7 auStack_1a8 [72];
  type_4 uStack_160;
  type_4 uStack_104;
  type_4 uStack_100;
  type_4 uStack_fc;
  type_4 *puStack_f8;
  type_4 uStack_f4;
  type_8 uStack_f0;
  type_7 uStack_ee;
  type_3 *var_23;
  type_4 uStack_c0;
  int var_30;
  int *var_35;
  type_2 var_34;
  int var_32;
  type_4 uStack_5c;
  char *sopt;
  char *var_6;
  char *var_29;
  char delimiter [2];
  
  var_2 = (*(type_5 *)PTR_getopt32_0012a30c)(var_26,var_1 + -0x1760,&sopt,&sopt);
  if ((var_2 & 7) == 0) {
    var_2 = (*(type_5 *)PTR_bb_error_msg_and_die_0012a1e4)
                      (var_3<var_4&var_5)9__f_l_0012a1a8 + -0x4f3c);
  }
  if ((var_2 & 8) != 0) {
    var_7 = (type_4 *)(type_2)(type_3)*var_6;
    if (var_7 == (type_4 *)0x0) goto LAB_000b2650;
    if (var_6[1] == '\0') goto LAB_000b2678;
    var_2 = (*(type_5 *)PTR_bb_error_msg_and_die_0012a1e4)
                      (var_3<var_4&var_5)9__f_l_0012a1a8 + -0x4f0c);
  }
  if ((var_2 & 4) == 0) {
    var_7 = (type_4 *)0x9;
    if ((var_2 & 0x10) != 0) {
      do {
        do {
          var_2 = (*(type_5 *)PTR_bb_error_msg_and_die_0012a1e4)
                            (var_3<var_4&var_5)9__f_l_0012a1a8 + -0x4ee0,
                             var_3<var_4&var_5)9__f_l_0012a1a8 + 0x727f);
LAB_000b2650:
          if ((var_2 & 4) != 0) goto LAB_000b204c;
        } while ((var_2 & 0x10) != 0);
        var_2 = (*(type_5 *)PTR_bb_error_msg_and_die_0012a1e4)
                          (var_3<var_4&var_5)9__f_l_0012a1a8 + -0x4eb0,
                           var_3<var_4&var_5)9__f_l_0012a1a8 + 0x727f);
LAB_000b2678:
        if ((var_2 & 4) != 0) goto LAB_000b204c;
      } while ((var_2 & 0x10) != 0);
      if (var_7 != (type_4 *)0x9) {
        var_11 = var_3<var_4&var_5)9__f_l_0012a1a8 + 0x727f;
        var_8 = PTR_bb_error_msg_and_die_0012a1e4;
        (*(type_5 *)PTR_bb_error_msg_and_die_0012a1e4)
                  (var_3<var_4&var_5)9__f_l_0012a1a8 + -0x4eb0);
        puVar24 = *(type_4 **)(var_8 + 0x78aa4);
        var_23 = (type_3 *)*puVar24;
        var_9 = 0;
        var_2 = (**(type_5 **)(var_8 + 0x77c40))
                          (var_11,*(int *)(var_8 + 0x77ae4) + -0x1730,
                           *(int *)(var_8 + 0x77b00) + 0x72ba,&var_18,&var_18,&uStack_1e4
                           ,&var_9,&uStack_1e8);
        var_12 = **(int **)(var_8 + 0x78a44);
        if ((var_2 & 4) != 0) {
          (**(type_5 **)(var_8 + 0x78734))(*(int *)(var_8 + 0x77b00) + -0x4e48);
        }
        var_10 = -1;
        if ((var_2 & 0x20) != 0) {
          if (var_9 != 0) {
            var_10 = (**(type_5 **)(var_8 + 0x77e64))(*(int *)(var_8 + 0x77b00) + 0x729e);
            if (-1 < var_10) goto LAB_000b276c;
            (**(type_5 **)(var_8 + 0x77b34))();
          }
          var_10 = 0;
        }
LAB_000b276c:
        var_15 = (type_4 *)(var_11 + var_12 * 4);
        var_13 = (type_3 *)*var_15;
        var_16 = var_2 & 10;
        pbVar19 = var_13;
        var_25 = var_2;
        if (var_13 == (type_3 *)0x0) goto LAB_000b2834;
        var_14 = (type_3 *)(type_2)*var_13;
        if (var_14 != &DAT_0000002b) goto LAB_000b2a78;
        pbVar19 = var_13 + 1;
        var_13 = (type_3 *)var_15[1];
        var_15 = var_15 + 1;
        if (var_16 != 0) goto LAB_000b2b34;
        var_25 = var_2 | 2;
        if (var_13 != (type_3 *)0x0) goto LAB_000b2a90;
        var_17 = var_2 & 0x10;
        var_18 = var_13;
LAB_000b27b0:
        pcVar29 = *(type_5 **)(var_8 + 0x78a84);
        var_2 = var_25;
        if (var_17 == 0) goto LAB_000b2850;
LAB_000b27b8:
        (**(type_5 **)(var_8 + 0x782a8))(uStack_1e4,auStack_1a8);
        auStack_1dc[0] = uStack_160;
        var_13 = pbVar19;
        do {
          var_7 = auStack_1dc;
          var_15 = &uStack_1d4;
          (**(type_5 **)(var_8 + 0x789dc))(var_7);
          if (var_18 == (type_3 *)0x0) {
LAB_000b28d0:
            var_25 = var_2;
            if (var_13 == (type_3 *)0x0) {
              var_12 = *(int *)(var_8 + 0x77b00);
              if (var_10 != -1) {
                var_19 = var_10 * 3;
                var_22 = var_19 + 8;
                var_15 = *(type_4 **)(var_12 + -0x4e18);
                uStack_104 = *(type_4 *)(var_12 + -0x4e24);
                uStack_100 = *(type_4 *)(var_12 + -20000);
                uStack_fc = *(type_4 *)(var_12 + -0x4e1c);
                puStack_f8 = var_15;
                uStack_f4 = var_20(*(type_8 *)(var_12 + -0x4e14),uStack_f4._2_2_);
                var_12 = var_22;
                if (var_10 != 0) {
                  var_21 = var_19 + 9;
                  var_12 = var_19 + 10;
                  goto LAB_000b2988;
                }
LAB_000b29b4:
                var_13 = (type_3 *)&uStack_104;
                *(type_7 *)((int)&uStack_104 + var_12) = 0;
                goto LAB_000b29c0;
              }
              var_19 = *(int *)(var_8 + 0x77b00);
              if ((var_2 & 1) != 0) {
                var_12 = 0x18;
                var_21 = 0x17;
                var_22 = 0x16;
                uStack_104 = *(type_4 *)(var_19 + -0x4e10);
                uStack_100 = *(type_4 *)(var_19 + -0x4e0c);
                uStack_fc = *(type_4 *)(var_19 + -0x4e08);
                puStack_f8 = *(type_4 **)(var_19 + -0x4e04);
                uStack_f4 = *(type_4 *)(var_19 + -0x4e00);
                uStack_f0 = *(type_8 *)(var_19 + -0x4dfc);
                uStack_ee = *(type_7 *)(var_19 + -0x4dfa);
LAB_000b2988:
                var_25 = 0x7a;
                if ((var_2 & 4) != 0) {
                  var_25 = 0x5a;
                }
                var_15 = (type_4 *)((int)&uStack_c0 + var_21);
                *(type_7 *)((int)&uStack_104 + var_22) = 0x25;
                *(char *)((int)&uStack_104 + var_21) = (char)var_25;
                goto LAB_000b29b4;
              }
              var_13 = (type_3 *)(*(int *)(var_8 + 0x77b00) + -0x4e74);
            }
            else {
LAB_000b29c0:
              var_2 = var_25;
              if (*var_13 == 0) {
                **(type_7 **)(var_8 + 0x77c9c) = 0;
                goto LAB_000b29d0;
              }
            }
            var_12 = (**(type_5 **)(var_8 + 0x77b48))(var_13,*(int *)(var_8 + 0x77b00) + -0x4df8);
            if (var_12 != 0) {
              var_13 = (type_3 *)(*(int *)(var_8 + 0x77b00) + -0x4e5c);
            }
            var_15 = (type_4 *)&DAT_00000400;
            (**(type_5 **)(var_8 + 0x788cc))
                      (*(type_4 *)(var_8 + 0x77c9c),0x400,var_13,&uStack_1d4);
LAB_000b29d0:
            (**(type_5 **)(var_8 + 0x7890c))(*(type_4 *)(var_8 + 0x77c9c));
            if (var_23 == (type_3 *)*puVar24) {
              return 0;
            }
            var_14 = var_23;
            var_16 = (**(type_5 **)(var_8 + 0x78a20))();
LAB_000b2a78:
            pbVar19 = var_13;
            var_25 = var_2;
            if (var_16 != 0) goto LAB_000b2b3c;
            pbVar19 = (type_3 *)0x0;
            var_25 = var_2 | 2;
LAB_000b2a90:
            var_18 = var_13;
            var_12 = (**(type_5 **)(var_8 + 0x785d0))(var_13,*(int *)(var_8 + 0x77b00) + -0x4e40);
            var_14 = var_13 + var_12;
            uVar30 = var_24(var_12,(type_2)*var_14);
            var_7 = var_15;
            if (*var_14 != 0) goto LAB_000b2b48;
            var_16 = var_12 - 8;
            var_2 = var_16 & 1;
            if (var_16 < 5) goto LAB_000b2ad4;
LAB_000b2ac4:
            var_14 = *(type_3 **)(var_8 + 0x77c24);
            do {
              var_2 = (**(type_5 **)(var_8 + 0x77b3c))(var_14,var_13);
LAB_000b2ad4:
              while (var_14 = *(type_3 **)(var_8 + 0x77c24), var_2 == 0) {
                var_15 = var_7;
                if (var_16 != 0) {
                  (**(type_5 **)(var_8 + 0x788e8))(&uStack_104,var_13 + 8,var_16,4);
                  (**(type_5 **)(var_8 + 0x78acc))(var_13 + var_16,var_13,8);
                  var_14 = var_18;
                  (**(type_5 **)(var_8 + 0x78aa8))(var_18,&uStack_104,var_16);
                }
                do {
                  var_13 = (type_3 *)var_15[1];
LAB_000b2b34:
                  var_17 = var_25 & 0x10;
                  var_7 = var_15;
                  if (var_13 == (type_3 *)0x0) goto LAB_000b27b0;
LAB_000b2b3c:
                  uVar30 = (**(type_5 **)(var_8 + 0x77b34))();
LAB_000b2b48:
                  var_15 = var_7;
                } while (((((int)uVar30 != 0x2e) || (9 < var_14[1] - 0x30)) ||
                         (9 < var_14[2] - 0x30)) ||
                        (var_16 = (int)((type_9)uVar30 >> 0x20) - 8, var_14[3] != 0));
                var_2 = var_16 & 1;
                if (4 < var_16) goto LAB_000b2ac4;
              }
            } while( true );
          }
          uStack_1d4 = 0;
          uStack_1d0 = 0;
          uStack_1cc = 0;
          if ((var_2 & 0x40) == 0) {
            (**(type_5 **)(var_8 + 0x7847c))(var_18,&uStack_1d4);
LAB_000b2874:
            if (*var_18 != 0x40) {
              uStack_1b4 = 0xffffffff;
            }
            var_15 = &uStack_1d4;
            auStack_1dc[0] = (**(type_5 **)(var_8 + 0x78480))();
            if (((var_2 & 2) != 0) && (var_12 = (**(type_5 **)(var_8 + 0x78708))(var_7), var_12 < 0))
            {
              (**(type_5 **)(var_8 + 0x77b90))(*(int *)(var_8 + 0x77b00) + -0x4e34);
            }
            goto LAB_000b28d0;
          }
          var_12 = (**(type_5 **)(var_8 + 0x789f8))(var_18,uStack_1e8,&uStack_1d4);
          if (var_12 != 0) goto LAB_000b2874;
          var_16 = (**(type_5 **)(var_8 + 0x77b3c))(*(type_4 *)(var_8 + 0x77c24),var_18);
          pbVar19 = var_13;
          var_25 = var_2;
LAB_000b2834:
          var_17 = var_25 & 0x10;
          if (var_16 != 0) goto LAB_000b27b0;
          var_2 = var_25 | 2;
          var_18 = (type_3 *)0x0;
          if ((var_25 & 0x10) != 0) goto LAB_000b27b8;
          pcVar29 = *(type_5 **)(var_8 + 0x78a84);
LAB_000b2850:
          (*pcVar29)(auStack_1dc);
          var_13 = pbVar19;
        } while( true );
      }
    }
  }
  else {
    var_7 = (type_4 *)0x9;
  }
LAB_000b204c:
  var_2 = 0;
  var_37 = (int *)0x0;
  var_12 = *(int *)PTR_optind_0012b0ec;
  var_8 = var_3<var_4&var_5)9__f_l_0012a1a8 + -0x6a44;
  var_11 = var_3<var_4&var_5)9__f_l_0012a1a8 + -0x1308;
  do {
    do {
      var_6 = (char *)(*(type_5 *)PTR_strsep_0012afa0)(&sopt,var_8);
      if (var_6 == (char *)0x0) {
        if (var_2 == 0) {
          (*(type_5 *)PTR_bb_error_msg_and_die_0012a1e4)
                    (var_3<var_4&var_5)9__f_l_0012a1a8 + -0x4e90);
        }
        var_28 = var_26 + var_12;
        (*(type_5 *)PTR_qsort_0012ad24)(var_37,var_2,8,var_27 + 0x1f64);
        if (*var_28 == (char *)0x0) {
          var_28 = var_28 + -1;
          *var_28 = var_3<var_4&var_5)9__f_l_0012a1a8 + -0x1308;
        }
        var_11 = PTR_fopen_or_warn_stdin_0012a3f0;
        var_8 = PTR_xmalloc_fgetline_0012a2fc;
        uStack_5c = 0;
        do {
          var_12 = (*(type_5 *)var_11)();
          if (var_12 == 0) {
            uStack_5c = 1;
          }
          else {
            var_30 = 0;
            while (var_29 = (char *)(*(type_5 *)var_8)(var_12), var_29 != (char *)0x0) {
              var_10 = (*(type_5 *)PTR_strlen_0012af3c)(var_29);
              var_19 = (*(type_5 *)PTR_xzalloc_0012a1d0)(var_10 + 1);
              pcVar8 = var_29;
              puVar3 = PTR_stdout_0012ae40;
              var_25 = *(type_2 *)PTR_option_mask32_0012a334;
              if ((var_25 & 3) == 0) {
                if (var_7 == (type_4 *)&DAT_0000000a) {
                  var_10 = *var_37;
                  if (var_10 <= var_30) {
                    if (var_10 < var_30) {
                      var_22 = 0;
                      do {
                        var_10 = var_10 + 1;
                        if (var_37[var_22 * 2 + 1] < var_10) {
                          if (var_2 <= var_22 + 1U) goto LAB_000b22d0;
                          var_10 = var_37[var_22 * 2 + 2];
LAB_000b2350:
                          var_22 = var_22 + 1;
                          if (var_30 < var_10) goto LAB_000b22d0;
                        }
                        else if (var_37[var_22 * 2 + 1] == -1) {
                          if (var_22 + 1U < var_2) {
                            var_10 = var_37[var_22 * 2 + 2];
                            goto LAB_000b2350;
                          }
                          goto LAB_000b22d0;
                        }
                      } while (var_10 < var_30);
                    }
                    (*(type_5 *)PTR_puts_0012afb4)(var_29);
                  }
                }
                else {
                  delimiter[1] = '\0';
                  delimiter[0] = (char)var_7;
                  var_10 = (*(type_5 *)PTR_strchr_0012af54)(var_29,var_7);
                  puVar3 = PTR_stdout_0012ae40;
                  if (var_10 != 0) {
                    var_10 = 0;
                    var_22 = -1;
                    var_34 = 1;
                    var_32 = 0;
                    var_31 = pcVar8;
                    var_35 = var_37;
                    while( true ) {
                      var_21 = *var_35;
                      do {
                        for (; (var_31 != (char *)0x0 && (var_22 < var_21)); var_22 = var_22 + 1) {
                          var_10 = (*(type_5 *)PTR_strsep_0012afa0)(&var_29,delimiter);
                          var_31 = var_29;
                        }
                        if (((var_10 != 0) && (var_22 == var_21)) &&
                           (*(char *)(var_19 + var_22) == '\0')) {
                          var_33 = *(int *)puVar3;
                          if (var_32 != 0) {
                            var_31 = *(char **)(var_33 + 0x14);
                            if (var_31 < *(char **)(var_33 + 0x18)) {
                              *(char **)(var_33 + 0x14) = var_31 + 1;
                              *var_31 = (char)var_7;
                              var_33 = *(int *)puVar3;
                            }
                            else {
                              (*(type_5 *)PTR___overflow_0012ada8)(var_33,var_7);
                              var_33 = *(int *)puVar3;
                            }
                          }
                          var_32 = var_32 + 1;
                          (*(type_5 *)PTR_fputs_unlocked_0012b204)(var_10,var_33);
                          *(char *)(var_19 + var_22) = 'X';
                        }
                        var_21 = var_21 + 1;
                        var_31 = var_29;
                        if (var_35[1] < var_21) {
                          if ((var_2 <= var_34) || (var_29 == (char *)0x0)) goto LAB_000b252c;
                          goto LAB_000b24fc;
                        }
                        if (var_29 == (char *)0x0) goto LAB_000b252c;
                      } while (var_35[1] != -1);
                      if (var_2 <= var_34) break;
LAB_000b24fc:
                      var_35 = var_35 + 2;
                      var_34 = var_34 + 1;
                    }
LAB_000b252c:
                    var_22 = *(int *)puVar3;
                    var_31 = *(char **)(var_22 + 0x14);
                    if (var_31 < *(char **)(var_22 + 0x18)) goto LAB_000b2544;
                    goto LAB_000b22bc;
                  }
                  if ((var_25 & 0x10) == 0) {
                    (*(type_5 *)PTR_puts_0012afb4)(pcVar8);
                  }
                }
              }
              else {
                var_22 = *(int *)PTR_stdout_0012ae40;
                var_31 = *(char **)(var_22 + 0x14);
                var_38 = *(char **)(var_22 + 0x18);
                var_36 = var_37;
                do {
                  while (var_21 = *var_36, var_10 <= var_21) {
LAB_000b22a0:
                    var_36 = var_36 + 2;
                    if (var_37 + var_2 * 2 == var_36) {
                      bVar2 = var_31 < var_38;
                      goto LAB_000b22b4;
                    }
                  }
                  var_39 = (char *)(var_19 + var_21);
                  do {
                    if (*var_39 == '\0') {
                      *var_39 = 'X';
                      cVar1 = var_29[var_21];
                      if (var_38 <= var_31) {
                        (*(type_5 *)PTR___overflow_0012ada8)();
                        var_22 = *(int *)puVar3;
                        var_31 = *(char **)(var_22 + 0x14);
                        var_38 = *(char **)(var_22 + 0x18);
                        goto LAB_000b228c;
                      }
                      *(char **)(var_22 + 0x14) = var_31 + 1;
                      *var_31 = cVar1;
                      var_22 = *(int *)puVar3;
                      var_31 = *(char **)(var_22 + 0x14);
                      var_38 = *(char **)(var_22 + 0x18);
                      if (var_36[1] < var_21 + 1) goto LAB_000b22a0;
                    }
                    else {
LAB_000b228c:
                      if (var_36[1] < var_21 + 1) goto LAB_000b22a0;
                    }
                    var_21 = var_21 + 1;
                    var_39 = var_39 + 1;
                  } while (var_10 != var_21);
                  var_36 = var_36 + 2;
                } while (var_37 + var_2 * 2 != var_36);
                bVar2 = var_31 < var_38;
LAB_000b22b4:
                if (bVar2) {
LAB_000b2544:
                  *(char **)(var_22 + 0x14) = var_31 + 1;
                  *var_31 = '\n';
                }
                else {
LAB_000b22bc:
                  (*(type_5 *)PTR___overflow_0012ada8)(var_22,10);
                }
              }
LAB_000b22d0:
              var_30 = var_30 + 1;
              (*(type_5 *)PTR_free_0012b168)(var_19);
              (*(type_5 *)PTR_free_0012b168)(pcVar8);
            }
            (*(type_5 *)PTR_fclose_if_not_stdin_0012a3f4)(var_12);
          }
          var_28 = var_28 + 1;
          if (*var_28 == (char *)0x0) {
            var_12 = (*(type_5 *)PTR_fflush_stdout_and_exit_0012a3f8)(uStack_5c);
            return var_12;
          }
        } while( true );
      }
    } while (*var_6 == '\0');
    pcVar8 = (char *)(*(type_5 *)PTR_strsep_0012afa0)(&var_6,var_11);
    if ((*pcVar8 == '\0') || (var_10 = (*(type_5 *)PTR_xatoi_positive_0012a3e8)(pcVar8), var_10 == 0))
    {
      var_10 = 0;
      if (var_6 != (char *)0x0) goto LAB_000b25f8;
LAB_000b20c8:
      var_19 = -1;
    }
    else {
      var_10 = var_10 + -1;
      if (var_6 == (char *)0x0) goto LAB_000b20c8;
LAB_000b25f8:
      var_19 = 0x7fffffff;
      if (*var_6 != '\0') {
        var_19 = 0x7ffffffe;
        var_22 = (*(type_5 *)PTR_xatoi_positive_0012a3e8)();
        if (var_22 != 0) {
          var_19 = var_22 + -1;
        }
        if (var_10 == var_19) {
          var_19 = -1;
        }
      }
    }
    var_37 = (int *)(*(type_5 *)PTR_xrealloc_vector_helper_0012a3b8)(var_37,0x804,var_2);
    var_22 = var_2 * 2;
    var_2 = var_2 + 1;
    var_37[var_22] = var_10;
    (var_37 + var_22)[1] = var_19;
  } while( true );
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (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: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (identifier))) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (do_statement body: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) 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 (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator 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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (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)) (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)) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)) (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) (labeled_statement label: (statement_identifier) (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: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (identifier))) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (identifier)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (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))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (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: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (field_expression argument: (identifier) field: (field_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier))))) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (pointer_expression argument: (identifier))) right: (identifier))))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (goto_statement label: (statement_identifier)))) (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: (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))))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (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)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (number_literal) (identifier) (pointer_expression argument: (identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) consequence: (compound_statement (return_statement (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (labeled_statement label: (statement_identifier) (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: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (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)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))) (labeled_statement label: (statement_identifier) (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (binary_expression left: (identifier) right: (number_literal)))) body: (compound_statement (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: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (identifier)) (binary_expression left: (identifier) right: (number_literal)) (identifier) (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (identifier) right: (identifier)) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)) (identifier)))))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (subscript_expression argument: (identifier) index: (number_literal))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) condition: (parenthesized_expression (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: (parenthesized_expression (binary_expression left: (number_literal) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))))) right: (parenthesized_expression (binary_expression left: (number_literal) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal)))) right: (number_literal))) right: (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (goto_statement label: (statement_identifier))))))) condition: (parenthesized_expression (true))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (pointer_expression argument: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (true)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_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: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))) (do_statement body: (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (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: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier) (number_literal) (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (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))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (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: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (identifier))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))))) (labeled_statement label: (statement_identifier) (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: (goto_statement label: (statement_identifier)))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))))) (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier))))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (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: (pointer_expression argument: (identifier)))) (do_statement body: (compound_statement (for_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) update: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))))) 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: (identifier))))) right: (char_literal (escape_sequence)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_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: (identifier))))) right: (char_literal (character)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (break_statement)) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier))) right: (binary_expression left: (identifier) right: (identifier)))) body: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (goto_statement label: (statement_identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (char_literal (character)))) (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: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (binary_expression left: (identifier) right: (number_literal)))) consequence: (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (number_literal)))))))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier))))) condition: (parenthesized_expression (true)))))) condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (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: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (number_literal) (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)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))) (expression_statement (assignment_expression left: (subscript_expression argument: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) index: (number_literal)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) condition: (parenthesized_expression (true))))))

undefined4 MASKED(undefined4 param_1,int param_2)

{
  undefined1 uVar1;
  bool bVar2;
  undefined *puVar3;
  uint uVar4;
  undefined *puVar5;
  undefined *puVar6;
  char *pcVar7;
  int iVar8;
  int iVar9;
  int iVar10;
  undefined1 *puVar11;
  int iVar12;
  uint uVar13;
  uint uVar14;
  undefined1 *puVar15;
  int iVar16;
  byte *pbVar17;
  undefined4 *puVar18;
  byte *pbVar19;
  byte *pbVar20;
  int *piVar21;
  undefined4 *puVar22;
  int *piVar23;
  undefined4 *puVar24;
  int *piVar25;
  uint uVar26;
  int iVar27;
  int *piVar28;
  int iVar29;
  code *pcVar30;
  undefined8 uVar31;
  byte *local_1ec;
  undefined4 local_1e8;
  undefined4 local_1e4;
  int local_1e0;
  undefined4 local_1dc [2];
  undefined4 local_1d4;
  undefined4 local_1d0;
  undefined4 local_1cc;
  undefined4 local_1b4;
  undefined1 auStack_1a8 [72];
  undefined4 local_160;
  undefined4 local_104;
  undefined4 local_100;
  undefined4 local_fc;
  undefined4 *local_f8;
  undefined4 local_f4;
  undefined2 local_f0;
  undefined1 local_ee;
  byte *local_c4;
  undefined4 uStack_c0;
  int local_74;
  int *local_70;
  uint local_68;
  int local_60;
  undefined4 local_5c;
  undefined1 auStack_3c [4];
  byte *local_38;
  int local_34;
  undefined1 local_30;
  undefined1 local_2f;
  undefined4 local_2c;
  
  local_2c = *(undefined4 *)PTR___stack_chk_guard_0012b14c;
  uVar4 = (*(code *)PTR_FUN_0012a30c)(param_2,PTR_UINT_0012a18c + -0x1760,auStack_3c,auStack_3c);
  if ((uVar4 & 7) == 0) {
    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f3c);
  }
  if ((uVar4 & 8) != 0) {
    puVar22 = (undefined4 *)(uint)*local_38;
    if (puVar22 == (undefined4 *)0x0) goto LAB_000b2650;
    if (local_38[1] == 0) goto LAB_000b2678;
    uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4f0c);
  }
  if ((uVar4 & 4) == 0) {
    puVar22 = (undefined4 *)0x9;
    if ((uVar4 & 0x10) != 0) {
      do {
        do {
          uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4ee0,PTR_FUN_0012a1a8 + 0x727f);
LAB_000b2650:
          if ((uVar4 & 4) != 0) goto LAB_000b204c;
        } while ((uVar4 & 0x10) != 0);
        uVar4 = (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0,PTR_FUN_0012a1a8 + 0x727f);
LAB_000b2678:
        if ((uVar4 & 4) != 0) goto LAB_000b204c;
      } while ((uVar4 & 0x10) != 0);
      if (puVar22 != (undefined4 *)0x9) {
        puVar6 = PTR_FUN_0012a1a8 + 0x727f;
        puVar5 = PTR_FUN_0012a1e4;
        (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4eb0);
        puVar24 = *(undefined4 **)(puVar5 + 0x78aa4);
        local_c4 = (byte *)*puVar24;
        local_1e0 = 0;
        uVar4 = (**(code **)(puVar5 + 0x77c40))
                          (puVar6,*(int *)(puVar5 + 0x77ae4) + -0x1730,
                           *(int *)(puVar5 + 0x77b00) + 0x72ba,&local_1ec,&local_1ec,&local_1e4,
                           &local_1e0,&local_1e8);
        iVar12 = **(int **)(puVar5 + 0x78a44);
        if ((uVar4 & 4) != 0) {
          (**(code **)(puVar5 + 0x78734))(*(int *)(puVar5 + 0x77b00) + -0x4e48);
        }
        iVar8 = -1;
        if ((uVar4 & 0x20) != 0) {
          if (local_1e0 != 0) {
            iVar8 = (**(code **)(puVar5 + 0x77e64))(*(int *)(puVar5 + 0x77b00) + 0x729e);
            if (-1 < iVar8) goto LAB_000b276c;
            (**(code **)(puVar5 + 0x77b34))();
          }
          iVar8 = 0;
        }
LAB_000b276c:
        puVar18 = (undefined4 *)(puVar6 + iVar12 * 4);
        pbVar19 = (byte *)*puVar18;
        uVar13 = uVar4 & 10;
        pbVar20 = pbVar19;
        uVar26 = uVar4;
        if (pbVar19 == (byte *)0x0) goto LAB_000b2834;
        pbVar17 = (byte *)(uint)*pbVar19;
        if (pbVar17 != &DAT_0000002b) goto LAB_000b2a78;
        pbVar20 = pbVar19 + 1;
        pbVar19 = (byte *)puVar18[1];
        puVar18 = puVar18 + 1;
        if (uVar13 != 0) goto LAB_000b2b34;
        uVar26 = uVar4 | 2;
        if (pbVar19 != (byte *)0x0) goto LAB_000b2a90;
        uVar14 = uVar4 & 0x10;
        local_1ec = pbVar19;
LAB_000b27b0:
        pcVar30 = *(code **)(puVar5 + 0x78a84);
        uVar4 = uVar26;
        if (uVar14 == 0) goto LAB_000b2850;
LAB_000b27b8:
        (**(code **)(puVar5 + 0x782a8))(local_1e4,auStack_1a8);
        local_1dc[0] = local_160;
        pbVar19 = pbVar20;
        do {
          puVar22 = local_1dc;
          puVar18 = &local_1d4;
          (**(code **)(puVar5 + 0x789dc))(puVar22);
          if (local_1ec == (byte *)0x0) {
LAB_000b28d0:
            uVar26 = uVar4;
            if (pbVar19 == (byte *)0x0) {
              iVar12 = *(int *)(puVar5 + 0x77b00);
              if (iVar8 != -1) {
                iVar9 = iVar8 * 3;
                iVar10 = iVar9 + 8;
                puVar18 = *(undefined4 **)(iVar12 + -0x4e18);
                local_104 = *(undefined4 *)(iVar12 + -0x4e24);
                local_100 = *(undefined4 *)(iVar12 + -20000);
                local_fc = *(undefined4 *)(iVar12 + -0x4e1c);
                local_f8 = puVar18;
                local_f4 = CONCAT22(*(undefined2 *)(iVar12 + -0x4e14),local_f4._2_2_);
                iVar12 = iVar10;
                if (iVar8 != 0) {
                  iVar16 = iVar9 + 9;
                  iVar12 = iVar9 + 10;
                  goto LAB_000b2988;
                }
LAB_000b29b4:
                pbVar19 = (byte *)&local_104;
                *(undefined1 *)((int)&local_104 + iVar12) = 0;
                goto LAB_000b29c0;
              }
              iVar9 = *(int *)(puVar5 + 0x77b00);
              if ((uVar4 & 1) != 0) {
                iVar12 = 0x18;
                iVar16 = 0x17;
                iVar10 = 0x16;
                local_104 = *(undefined4 *)(iVar9 + -0x4e10);
                local_100 = *(undefined4 *)(iVar9 + -0x4e0c);
                local_fc = *(undefined4 *)(iVar9 + -0x4e08);
                local_f8 = *(undefined4 **)(iVar9 + -0x4e04);
                local_f4 = *(undefined4 *)(iVar9 + -0x4e00);
                local_f0 = *(undefined2 *)(iVar9 + -0x4dfc);
                local_ee = *(undefined1 *)(iVar9 + -0x4dfa);
LAB_000b2988:
                uVar26 = 0x7a;
                if ((uVar4 & 4) != 0) {
                  uVar26 = 0x5a;
                }
                puVar18 = (undefined4 *)((int)&uStack_c0 + iVar16);
                *(undefined1 *)((int)&local_104 + iVar10) = 0x25;
                *(char *)((int)&local_104 + iVar16) = (char)uVar26;
                goto LAB_000b29b4;
              }
              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e74);
            }
            else {
LAB_000b29c0:
              uVar4 = uVar26;
              if (*pbVar19 == 0) {
                **(undefined1 **)(puVar5 + 0x77c9c) = 0;
                goto LAB_000b29d0;
              }
            }
            iVar12 = (**(code **)(puVar5 + 0x77b48))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4df8);
            if (iVar12 != 0) {
              pbVar19 = (byte *)(*(int *)(puVar5 + 0x77b00) + -0x4e5c);
            }
            puVar18 = (undefined4 *)0x400;
            (**(code **)(puVar5 + 0x788cc))
                      (*(undefined4 *)(puVar5 + 0x77c9c),0x400,pbVar19,&local_1d4);
LAB_000b29d0:
            (**(code **)(puVar5 + 0x7890c))(*(undefined4 *)(puVar5 + 0x77c9c));
            if (local_c4 == (byte *)*puVar24) {
              return 0;
            }
            pbVar17 = local_c4;
            uVar13 = (**(code **)(puVar5 + 0x78a20))();
LAB_000b2a78:
            pbVar20 = pbVar19;
            uVar26 = uVar4;
            if (uVar13 != 0) goto LAB_000b2b3c;
            pbVar20 = (byte *)0x0;
            uVar26 = uVar4 | 2;
LAB_000b2a90:
            local_1ec = pbVar19;
            iVar12 = (**(code **)(puVar5 + 0x785d0))(pbVar19,*(int *)(puVar5 + 0x77b00) + -0x4e40);
            pbVar17 = pbVar19 + iVar12;
            uVar31 = CONCAT44(iVar12,(uint)*pbVar17);
            puVar22 = puVar18;
            if (*pbVar17 != 0) goto LAB_000b2b48;
            uVar13 = iVar12 - 8;
            uVar4 = uVar13 & 1;
            if (uVar13 < 5) goto LAB_000b2ad4;
LAB_000b2ac4:
            pbVar17 = *(byte **)(puVar5 + 0x77c24);
            do {
              uVar4 = (**(code **)(puVar5 + 0x77b3c))(pbVar17,pbVar19);
LAB_000b2ad4:
              while (pbVar17 = *(byte **)(puVar5 + 0x77c24), uVar4 == 0) {
                puVar18 = puVar22;
                if (uVar13 != 0) {
                  (**(code **)(puVar5 + 0x788e8))(&local_104,pbVar19 + 8,uVar13,4);
                  (**(code **)(puVar5 + 0x78acc))(pbVar19 + uVar13,pbVar19,8);
                  pbVar17 = local_1ec;
                  (**(code **)(puVar5 + 0x78aa8))(local_1ec,&local_104,uVar13);
                }
                do {
                  pbVar19 = (byte *)puVar18[1];
LAB_000b2b34:
                  uVar14 = uVar26 & 0x10;
                  puVar22 = puVar18;
                  if (pbVar19 == (byte *)0x0) goto LAB_000b27b0;
LAB_000b2b3c:
                  uVar31 = (**(code **)(puVar5 + 0x77b34))();
LAB_000b2b48:
                  puVar18 = puVar22;
                } while (((((int)uVar31 != 0x2e) || (9 < pbVar17[1] - 0x30)) ||
                         (9 < pbVar17[2] - 0x30)) ||
                        (uVar13 = (int)((ulonglong)uVar31 >> 0x20) - 8, pbVar17[3] != 0));
                uVar4 = uVar13 & 1;
                if (4 < uVar13) goto LAB_000b2ac4;
              }
            } while( true );
          }
          local_1d4 = 0;
          local_1d0 = 0;
          local_1cc = 0;
          if ((uVar4 & 0x40) == 0) {
            (**(code **)(puVar5 + 0x7847c))(local_1ec,&local_1d4);
LAB_000b2874:
            if (*local_1ec != 0x40) {
              local_1b4 = 0xffffffff;
            }
            puVar18 = &local_1d4;
            local_1dc[0] = (**(code **)(puVar5 + 0x78480))();
            if (((uVar4 & 2) != 0) &&
               (iVar12 = (**(code **)(puVar5 + 0x78708))(puVar22), iVar12 < 0)) {
              (**(code **)(puVar5 + 0x77b90))(*(int *)(puVar5 + 0x77b00) + -0x4e34);
            }
            goto LAB_000b28d0;
          }
          iVar12 = (**(code **)(puVar5 + 0x789f8))(local_1ec,local_1e8,&local_1d4);
          if (iVar12 != 0) goto LAB_000b2874;
          uVar13 = (**(code **)(puVar5 + 0x77b3c))(*(undefined4 *)(puVar5 + 0x77c24),local_1ec);
          pbVar20 = pbVar19;
          uVar26 = uVar4;
LAB_000b2834:
          uVar14 = uVar26 & 0x10;
          if (uVar13 != 0) goto LAB_000b27b0;
          uVar4 = uVar26 | 2;
          local_1ec = (byte *)0x0;
          if ((uVar26 & 0x10) != 0) goto LAB_000b27b8;
          pcVar30 = *(code **)(puVar5 + 0x78a84);
LAB_000b2850:
          (*pcVar30)(local_1dc);
          pbVar19 = pbVar20;
        } while( true );
      }
    }
  }
  else {
    puVar22 = (undefined4 *)0x9;
  }
LAB_000b204c:
  uVar4 = 0;
  piVar21 = (int *)0x0;
  local_74 = *(int *)PTR_optind_0012b0ec;
  puVar5 = PTR_FUN_0012a1a8 + -0x6a44;
  puVar6 = PTR_FUN_0012a1a8 + -0x1308;
  piVar23 = (int *)PTR_FUN_0012a1a8;
  do {
    do {
      local_38 = (byte *)(*(code *)PTR_strsep_0012afa0)(auStack_3c,puVar5);
      if (local_38 == (byte *)0x0) {
        if (uVar4 == 0) {
          (*(code *)PTR_FUN_0012a1e4)(PTR_FUN_0012a1a8 + -0x4e90);
        }
        piVar25 = (int *)(param_2 + local_74 * 4);
        (*(code *)PTR_qsort_0012ad24)(piVar21,uVar4,8,PTR_LAB_0012aad4 + 0x1f64);
        if (*piVar25 == 0) {
          piVar25 = piVar25 + -1;
          *piVar25 = (int)(PTR_FUN_0012a1a8 + -0x1308);
        }
        puVar6 = PTR_FUN_0012a3f0;
        puVar5 = PTR_FUN_0012a2fc;
        local_5c = 0;
LAB_000b216c:
        iVar12 = (*(code *)puVar6)();
        if (iVar12 == 0) {
          local_5c = 1;
          goto LAB_000b21b8;
        }
        piVar23 = &local_34;
        local_74 = 0;
        do {
          iVar8 = (*(code *)puVar5)(iVar12);
          local_34 = iVar8;
          if (iVar8 == 0) {
            (*(code *)PTR_FUN_0012a3f4)(iVar12);
LAB_000b21b8:
            piVar25 = piVar25 + 1;
            if (*piVar25 != 0) goto LAB_000b216c;
            iVar8 = (*(code *)PTR_FUN_0012a3f8)(local_5c);
          }
          iVar9 = (*(code *)PTR_strlen_0012af3c)(iVar8);
          iVar10 = (*(code *)PTR_FUN_0012a1d0)(iVar9 + 1);
          iVar8 = local_34;
          puVar3 = PTR_stdout_0012ae40;
          uVar26 = *(uint *)PTR_DAT_0012a334;
          if ((uVar26 & 3) == 0) {
            if (puVar22 == (undefined4 *)&DAT_0000000a) {
              iVar9 = *piVar21;
              if (iVar9 <= local_74) {
                if (iVar9 < local_74) {
                  iVar16 = 0;
                  do {
                    iVar9 = iVar9 + 1;
                    if (piVar21[iVar16 * 2 + 1] < iVar9) {
                      if (uVar4 <= iVar16 + 1U) goto LAB_000b22d0;
                      iVar9 = piVar21[iVar16 * 2 + 2];
LAB_000b2350:
                      iVar16 = iVar16 + 1;
                      if (local_74 < iVar9) goto LAB_000b22d0;
                    }
                    else if (piVar21[iVar16 * 2 + 1] == -1) {
                      if (iVar16 + 1U < uVar4) {
                        iVar9 = piVar21[iVar16 * 2 + 2];
                        goto LAB_000b2350;
                      }
                      goto LAB_000b22d0;
                    }
                  } while (iVar9 < local_74);
                }
                (*(code *)PTR_puts_0012afb4)(local_34);
              }
            }
            else {
              local_2f = 0;
              local_30 = (char)puVar22;
              iVar9 = (*(code *)PTR_strchr_0012af54)(local_34,puVar22);
              puVar3 = PTR_stdout_0012ae40;
              if (iVar9 != 0) {
                iVar16 = 0;
                iVar27 = -1;
                local_68 = 1;
                local_60 = 0;
                iVar9 = iVar8;
                local_70 = piVar21;
                while( true ) {
                  iVar29 = *local_70;
                  do {
                    for (; (iVar9 != 0 && (iVar27 < iVar29)); iVar27 = iVar27 + 1) {
                      iVar16 = (*(code *)PTR_strsep_0012afa0)(piVar23,&local_30);
                      iVar9 = local_34;
                    }
                    if (((iVar16 != 0) && (iVar27 == iVar29)) &&
                       (*(char *)(iVar10 + iVar27) == '\0')) {
                      iVar9 = *(int *)puVar3;
                      if (local_60 != 0) {
                        puVar11 = *(undefined1 **)(iVar9 + 0x14);
                        if (puVar11 < *(undefined1 **)(iVar9 + 0x18)) {
                          *(undefined1 **)(iVar9 + 0x14) = puVar11 + 1;
                          *puVar11 = (char)puVar22;
                          iVar9 = *(int *)puVar3;
                        }
                        else {
                          (*(code *)PTR___overflow_0012ada8)(iVar9,puVar22);
                          iVar9 = *(int *)puVar3;
                        }
                      }
                      local_60 = local_60 + 1;
                      (*(code *)PTR_fputs_unlocked_0012b204)(iVar16,iVar9);
                      *(char *)(iVar10 + iVar27) = 'X';
                    }
                    iVar29 = iVar29 + 1;
                    iVar9 = local_34;
                    if (local_70[1] < iVar29) {
                      if ((uVar4 <= local_68) || (local_34 == 0)) goto LAB_000b252c;
                      goto LAB_000b24fc;
                    }
                    if (local_34 == 0) goto LAB_000b252c;
                  } while (local_70[1] != -1);
                  if (uVar4 <= local_68) break;
LAB_000b24fc:
                  local_70 = local_70 + 2;
                  local_68 = local_68 + 1;
                }
LAB_000b252c:
                iVar16 = *(int *)puVar3;
                puVar11 = *(undefined1 **)(iVar16 + 0x14);
                if (puVar11 < *(undefined1 **)(iVar16 + 0x18)) goto LAB_000b2544;
                goto LAB_000b22bc;
              }
              if ((uVar26 & 0x10) == 0) {
                (*(code *)PTR_puts_0012afb4)(iVar8);
              }
            }
          }
          else {
            iVar16 = *(int *)PTR_stdout_0012ae40;
            puVar11 = *(undefined1 **)(iVar16 + 0x14);
            puVar15 = *(undefined1 **)(iVar16 + 0x18);
            piVar28 = piVar21;
            do {
              while (iVar27 = *piVar28, iVar9 <= iVar27) {
LAB_000b22a0:
                piVar28 = piVar28 + 2;
                if (piVar21 + uVar4 * 2 == piVar28) {
                  bVar2 = puVar11 < puVar15;
                  goto LAB_000b22b4;
                }
              }
              pcVar7 = (char *)(iVar10 + iVar27);
              do {
                if (*pcVar7 == '\0') {
                  *pcVar7 = 'X';
                  uVar1 = *(undefined1 *)(local_34 + iVar27);
                  if (puVar15 <= puVar11) {
                    (*(code *)PTR___overflow_0012ada8)();
                    iVar16 = *(int *)puVar3;
                    puVar11 = *(undefined1 **)(iVar16 + 0x14);
                    puVar15 = *(undefined1 **)(iVar16 + 0x18);
                    goto LAB_000b228c;
                  }
                  *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;
                  *puVar11 = uVar1;
                  iVar16 = *(int *)puVar3;
                  puVar11 = *(undefined1 **)(iVar16 + 0x14);
                  puVar15 = *(undefined1 **)(iVar16 + 0x18);
                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;
                }
                else {
LAB_000b228c:
                  if (piVar28[1] < iVar27 + 1) goto LAB_000b22a0;
                }
                iVar27 = iVar27 + 1;
                pcVar7 = pcVar7 + 1;
              } while (iVar9 != iVar27);
              piVar28 = piVar28 + 2;
            } while (piVar21 + uVar4 * 2 != piVar28);
            bVar2 = puVar11 < puVar15;
LAB_000b22b4:
            if (bVar2) {
LAB_000b2544:
              *(undefined1 **)(iVar16 + 0x14) = puVar11 + 1;
              *puVar11 = 10;
            }
            else {
LAB_000b22bc:
              (*(code *)PTR___overflow_0012ada8)(iVar16,10);
            }
          }
LAB_000b22d0:
          local_74 = local_74 + 1;
          (*(code *)PTR_free_0012b168)(iVar10);
          (*(code *)PTR_free_0012b168)(iVar8);
        } while( true );
      }
    } while (*local_38 == 0);
    pcVar7 = (char *)(*(code *)PTR_strsep_0012afa0)(&local_38,puVar6);
    if ((*pcVar7 == '\0') || (iVar12 = (*(code *)PTR_FUN_0012a3e8)(pcVar7), iVar12 == 0)) {
      piVar25 = (int *)0x0;
      if (local_38 != (byte *)0x0) goto LAB_000b25f8;
LAB_000b20c8:
      piVar23 = (int *)0xffffffff;
    }
    else {
      piVar25 = (int *)(iVar12 + -1);
      if (local_38 == (byte *)0x0) goto LAB_000b20c8;
LAB_000b25f8:
      piVar23 = (int *)0x7fffffff;
      if (*local_38 != 0) {
        piVar23 = (int *)0x7ffffffe;
        iVar12 = (*(code *)PTR_FUN_0012a3e8)();
        if (iVar12 != 0) {
          piVar23 = (int *)(iVar12 + -1);
        }
        if (piVar25 == piVar23) {
          piVar23 = (int *)0xffffffff;
        }
      }
    }
    piVar21 = (int *)(*(code *)PTR_FUN_0012a3b8)(piVar21,0x804,uVar4);
    iVar12 = uVar4 * 2;
    uVar4 = uVar4 + 1;
    piVar21[iVar12] = (int)piVar25;
    (piVar21 + iVar12)[1] = (int)piVar23;
  } while( true );
}

