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

_Bool paste_parallel(size_t nfiles,char **fnamptr)

{
  _IO_FILE *p_Var1;
  undefined *puVar2;
  size_t n;
  FILE *pFVar3;
  int *piVar4;
  int *piVar5;
  _IO_FILE *p_Var6;
  char *pcVar7;
  uchar uVar8;
  int iVar9;
  uint uVar10;
  uchar *puVar11;
  undefined1 *puVar12;
  undefined1 *puVar13;
  char **ppcVar14;
  byte *pbVar15;
  int *piVar16;
  byte *pbVar17;
  bool bVar18;
  bool bVar19;
  byte bVar20;
  undefined1 auStack_5c [12];
  byte *local_50;
  byte *local_4c;
  byte *local_48;
  int *local_44;
  byte *local_40;
  uint local_3c;
  void *local_38;
  char local_31;
  uint local_30;
  int *local_2c;
  int *local_28;
  uint *local_24;
  int *local_20;
  undefined4 uStack_14;
  
  bVar20 = 0;
  uStack_14 = 0x11879;
  local_38 = xmalloc(nfiles + 2);
  n = (nfiles + 1) * 4;
  puVar13 = auStack_5c;
  if ((-1 < (int)n) && (puVar13 = auStack_5c, nfiles + 1 >> 0x1e == 0)) {
    local_2c = (int *)xmalloc(n);
    puVar12 = auStack_5c;
    bVar18 = false;
    bVar19 = nfiles == 0;
    if (bVar19) {
      local_31 = '\x01';
LAB_00011c05:
      free(local_2c);
      free(local_38);
      return (_Bool)local_31;
    }
    local_50 = &DAT_000180ad;
    local_31 = '\0';
    local_4c = (byte *)0x17012;
    local_48 = (byte *)0x0;
    piVar5 = (int *)PTR_stdin_0001bfd0;
    ppcVar14 = fnamptr;
    do {
      iVar9 = 2;
      pbVar15 = (byte *)*ppcVar14;
      pbVar17 = local_50;
      do {
        if (iVar9 == 0) break;
        iVar9 = iVar9 + -1;
        bVar18 = *pbVar15 < *pbVar17;
        bVar19 = *pbVar15 == *pbVar17;
        pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1;
        pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1;
      } while (bVar19);
      if ((!bVar18 && !bVar19) == bVar18) {
        have_read_stdin = true;
        local_2c[(int)local_48] = *piVar5;
      }
      else {
        local_44 = piVar5;
        pFVar3 = fopen64(*ppcVar14,(char *)local_4c);
        local_2c[(int)local_48] = (int)pFVar3;
        if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;
        iVar9 = fileno(pFVar3);
        if (iVar9 == 0) {
          local_31 = '\x01';
        }
        fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);
        piVar5 = local_44;
      }
      local_48 = local_48 + 1;
      ppcVar14 = ppcVar14 + 1;
      bVar18 = nfiles < local_48;
      bVar19 = (byte *)nfiles == local_48;
    } while (!bVar19);
    if (local_31 == '\0') {
      local_31 = '\x01';
    }
    else if (have_read_stdin != false) {
      dcgettext();
      puVar12 = &stack0xffffff94;
      error();
LAB_00011e18:
      *(char **)(puVar12 + -8) = *ppcVar14;
      *(undefined4 *)(puVar12 + -0xc) = 3;
      *(undefined4 *)(puVar12 + -0x10) = 0;
      *(undefined4 *)(puVar12 + -0x14) = 0x11e27;
      pcVar7 = quotearg_n_style_colon
                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),
                          *(char **)(puVar12 + -8));
      *(undefined4 *)(puVar12 + -0x14) = 0x11e2e;
      piVar5 = __errno_location();
      *(char **)(puVar12 + -0x14) = pcVar7;
      *(char **)(puVar12 + -0x18) = "%s";
      *(int *)(puVar12 + -0x1c) = *piVar5;
      puVar13 = puVar12 + -0x20;
      *(undefined4 *)(puVar12 + -0x20) = 1;
      *(undefined4 *)(puVar12 + -0x24) = 0x11e3f;
      error();
      goto LAB_00011e3f;
    }
    local_28 = (int *)PTR_stdout_0001bfd4;
    local_40 = local_48;
    local_20 = local_28;
LAB_000119d5:
    local_4c = (byte *)delims;
    local_50 = (byte *)0x1;
    bVar18 = false;
    local_44 = (int *)0x0;
    p_Var6 = (_IO_FILE *)*local_2c;
    piVar5 = local_2c;
    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;
LAB_00011a08:
    pbVar15 = (byte *)p_Var6->_IO_read_ptr;
    if (pbVar15 < p_Var6->_IO_read_end) {
      p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);
      uVar10 = (uint)*pbVar15;
      if (local_44 != (int *)0x0) {
LAB_00011a25:
        piVar16 = local_44;
        local_3c = uVar10;
        piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);
        if (piVar4 != piVar16) goto LAB_00011ab9;
        local_44 = (int *)0x0;
        uVar10 = local_3c;
      }
    }
    else {
      local_30 = __uflow(p_Var6);
      local_24 = (uint *)__errno_location();
      local_3c = *local_24;
      uVar10 = local_30;
      if (local_30 != 0xffffffff && local_44 != (int *)0x0) goto LAB_00011a25;
      if (local_30 == 0xffffffff) {
        if ((p_Var6->_flags & 0x20) == 0) {
          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;
        }
        else {
          pcVar7 = quotearg_n_style_colon
                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);
          error(0,local_3c,"%s",pcVar7);
          local_31 = '\0';
          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;
        }
        if (p_Var6 == p_Var1) {
          clearerr_unlocked(p_Var6);
        }
        else {
          iVar9 = rpl_fclose((FILE *)p_Var6);
          if (iVar9 == -1) {
            pcVar7 = quotearg_n_style_colon
                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);
            error(0,*local_24,"%s",pcVar7);
            local_31 = '\0';
          }
        }
        *piVar5 = 0;
        local_40 = local_40 + -1;
        goto LAB_00011b37;
      }
    }
    piVar16 = (int *)PTR_stdout_0001bfd4;
    if (uVar10 == line_delim) {
      piVar16 = local_20;
      if (local_48 != local_50) goto LAB_00011ae1;
    }
    else {
      do {
        p_Var6 = (_IO_FILE *)*piVar16;
        pcVar7 = p_Var6->_IO_write_ptr;
        if (pcVar7 < p_Var6->_IO_write_end) {
          p_Var6->_IO_write_ptr = pcVar7 + 1;
          *pcVar7 = (char)uVar10;
        }
        else {
          iVar9 = __overflow(p_Var6,uVar10 & 0xff);
          if (iVar9 < 0) goto LAB_00011ab9;
        }
        p_Var6 = (_IO_FILE *)*piVar5;
        pbVar15 = (byte *)p_Var6->_IO_read_ptr;
        if (pbVar15 < p_Var6->_IO_read_end) {
          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);
          uVar10 = (uint)*pbVar15;
        }
        else {
          uVar10 = __uflow(p_Var6);
          if (uVar10 == 0xffffffff) {
            if (local_48 != local_50) goto LAB_00011ae1;
            p_Var6 = (_IO_FILE *)*piVar16;
            uVar10 = (uint)line_delim;
            puVar11 = (uchar *)p_Var6->_IO_write_ptr;
            uVar8 = line_delim;
            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;
            goto LAB_00011b9c;
          }
        }
      } while (line_delim != uVar10);
      if (local_48 != local_50) {
LAB_00011ae1:
        bVar20 = *local_4c;
        if (bVar20 != 0) {
          p_Var6 = (_IO_FILE *)*local_28;
          pbVar15 = (byte *)p_Var6->_IO_write_ptr;
          if (pbVar15 < p_Var6->_IO_write_end) {
            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);
            *pbVar15 = bVar20;
          }
          else {
            iVar9 = __overflow(p_Var6,(uint)bVar20);
            if (iVar9 < 0) goto LAB_00011ab9;
          }
        }
        local_4c = local_4c + 1;
        bVar18 = true;
        if ((byte *)delim_end == local_4c) goto LAB_00011b6f;
        goto LAB_00011b06;
      }
    }
    p_Var6 = (_IO_FILE *)*piVar16;
    puVar11 = (uchar *)p_Var6->_IO_write_ptr;
    uVar8 = (uchar)uVar10;
    if (puVar11 < p_Var6->_IO_write_end) {
LAB_00011b9c:
      p_Var6->_IO_write_ptr = (char *)(puVar11 + 1);
      *puVar11 = uVar8;
    }
    else {
LAB_00011c45:
      iVar9 = __overflow(p_Var6,uVar10 & 0xff);
      if (iVar9 < 0) {
LAB_00011ab9:
                    /* WARNING: Subroutine does not return */
        write_error();
      }
    }
    bVar18 = true;
LAB_00011b06:
    pbVar15 = local_50 + 1;
    piVar5 = piVar5 + 1;
    bVar19 = local_50 < local_48;
    local_50 = pbVar15;
    if (bVar19 && local_40 != (byte *)0x0) {
      p_Var6 = (_IO_FILE *)*piVar5;
      if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;
LAB_00011b37:
      piVar16 = local_44;
      puVar2 = PTR_stdout_0001bfd4;
      if (local_48 != local_50) {
        if (*local_4c != 0) {
          *(byte *)((int)local_38 + (int)local_44) = *local_4c;
          local_44 = (int *)((int)local_44 + 1);
        }
        local_4c = local_4c + 1;
        if ((byte *)delim_end == local_4c) {
LAB_00011b6f:
          local_4c = (byte *)delims;
        }
        goto LAB_00011b06;
      }
      if (bVar18) {
        pFVar3 = *(FILE **)PTR_stdout_0001bfd4;
        if (local_44 != (int *)0x0) {
          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);
          if (piVar5 != piVar16) goto LAB_00011ab9;
          pFVar3 = *(FILE **)puVar2;
        }
        uVar8 = line_delim;
        puVar11 = (uchar *)pFVar3->_IO_write_ptr;
        if (pFVar3->_IO_write_end <= puVar11) {
          iVar9 = __overflow(pFVar3,(uint)line_delim);
          if (-1 < iVar9) goto LAB_00011bf9;
          goto LAB_00011ab9;
        }
        pFVar3->_IO_write_ptr = (char *)(puVar11 + 1);
        *puVar11 = uVar8;
      }
    }
LAB_00011bf9:
    if (local_40 == (byte *)0x0) goto LAB_00011c05;
    goto LAB_000119d5;
  }
LAB_00011e3f:
                    /* WARNING: Subroutine does not return */
  *(undefined **)(puVar13 + -4) = &UNK_00011e44;
  xalloc_die();
}



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

char FUN_00011870(byte *param_1,undefined4 *param_2)

{
  _IO_FILE *p_Var1;
  char *pcVar2;
  int *piVar3;
  FILE *pFVar4;
  int *piVar5;
  _IO_FILE *p_Var6;
  uint uVar7;
  undefined4 uVar8;
  int *piVar9;
  int iVar10;
  undefined1 *puVar11;
  undefined1 *puVar12;
  byte *pbVar13;
  int *piVar14;
  byte *pbVar15;
  bool bVar16;
  bool bVar17;
  byte bVar18;
  undefined1 auStack_5c [12];
  byte *local_50;
  byte *local_4c;
  byte *local_48;
  int *local_44;
  byte *local_40;
  uint local_3c;
  void *local_38;
  char local_31;
  uint local_30;
  int *local_2c;
  int *local_28;
  uint *local_24;
  int *local_20;
  undefined4 uStack_14;
  
  bVar18 = 0;
  uStack_14 = 0x11879;
  local_38 = (void *)FUN_00014cb0();
  puVar12 = auStack_5c;
  if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {
    local_2c = (int *)FUN_00014cb0();
    puVar11 = auStack_5c;
    bVar16 = false;
    bVar17 = param_1 == (byte *)0x0;
    if (bVar17) {
      local_31 = '\x01';
LAB_00011c05:
      free(local_2c);
      free(local_38);
      return local_31;
    }
    local_50 = &DAT_000180ad;
    local_31 = '\0';
    local_4c = (byte *)0x17012;
    local_48 = (byte *)0x0;
    piVar9 = (int *)PTR_stdin_0001bfd0;
    do {
      iVar10 = 2;
      pbVar13 = (byte *)*param_2;
      pbVar15 = local_50;
      do {
        if (iVar10 == 0) break;
        iVar10 = iVar10 + -1;
        bVar16 = *pbVar13 < *pbVar15;
        bVar17 = *pbVar13 == *pbVar15;
        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;
        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;
      } while (bVar17);
      if ((!bVar16 && !bVar17) == bVar16) {
        DAT_0001c171 = '\x01';
        local_2c[(int)local_48] = *piVar9;
      }
      else {
        local_44 = piVar9;
        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);
        local_2c[(int)local_48] = (int)pFVar4;
        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;
        iVar10 = fileno(pFVar4);
        if (iVar10 == 0) {
          local_31 = '\x01';
        }
        FUN_000126a0();
        piVar9 = local_44;
      }
      local_48 = local_48 + 1;
      param_2 = param_2 + 1;
      bVar16 = param_1 < local_48;
      bVar17 = param_1 == local_48;
    } while (!bVar17);
    if (local_31 == '\0') {
      local_31 = '\x01';
    }
    else if (DAT_0001c171 != '\0') {
      dcgettext();
      puVar11 = &stack0xffffff94;
      error();
LAB_00011e18:
      *(undefined4 *)(puVar11 + -8) = *param_2;
      *(undefined4 *)(puVar11 + -0xc) = 3;
      *(undefined4 *)(puVar11 + -0x10) = 0;
      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;
      uVar8 = FUN_00014440();
      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;
      piVar9 = __errno_location();
      *(undefined4 *)(puVar11 + -0x14) = uVar8;
      *(char **)(puVar11 + -0x18) = "%s";
      *(int *)(puVar11 + -0x1c) = *piVar9;
      puVar12 = puVar11 + -0x20;
      *(undefined4 *)(puVar11 + -0x20) = 1;
      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;
      error();
      goto LAB_00011e3f;
    }
    local_28 = (int *)PTR_stdout_0001bfd4;
    local_40 = local_48;
    local_20 = local_28;
LAB_000119d5:
    local_4c = DAT_0001c16c;
    local_50 = (byte *)0x1;
    bVar16 = false;
    local_44 = (int *)0x0;
    p_Var6 = (_IO_FILE *)*local_2c;
    piVar9 = local_2c;
    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;
LAB_00011a08:
    pbVar13 = (byte *)p_Var6->_IO_read_ptr;
    if (pbVar13 < p_Var6->_IO_read_end) {
      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);
      uVar7 = (uint)*pbVar13;
      if (local_44 == (int *)0x0) goto LAB_00011a54;
    }
    else {
      local_30 = __uflow(p_Var6);
      local_24 = (uint *)__errno_location();
      local_3c = *local_24;
      uVar7 = local_30;
      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {
        if (local_30 == 0xffffffff) {
          if ((p_Var6->_flags & 0x20) == 0) {
            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;
          }
          else {
            uVar8 = FUN_00014440();
            error(0,local_3c,"%s",uVar8);
            local_31 = '\0';
            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;
          }
          if (p_Var6 == p_Var1) {
            clearerr_unlocked(p_Var6);
          }
          else {
            iVar10 = FUN_00014ff0();
            if (iVar10 == -1) {
              uVar8 = FUN_00014440();
              error(0,*local_24,"%s",uVar8);
              local_31 = '\0';
            }
          }
          *piVar9 = 0;
          local_40 = local_40 + -1;
          goto LAB_00011b37;
        }
        goto LAB_00011a54;
      }
    }
    piVar3 = local_44;
    piVar14 = (int *)PTR_stdout_0001bfd4;
    local_3c = uVar7;
    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);
    if (piVar5 != piVar3) goto LAB_00011ab9;
    local_44 = (int *)0x0;
    uVar7 = local_3c;
LAB_00011a54:
    piVar14 = (int *)PTR_stdout_0001bfd4;
    if (uVar7 == DAT_0001c0e8) {
      piVar14 = local_20;
      if (local_48 != local_50) goto LAB_00011ae1;
      goto LAB_00011b8e;
    }
    do {
      p_Var6 = (_IO_FILE *)*piVar14;
      pcVar2 = p_Var6->_IO_write_ptr;
      if (pcVar2 < p_Var6->_IO_write_end) {
        p_Var6->_IO_write_ptr = pcVar2 + 1;
        *pcVar2 = (char)uVar7;
      }
      else {
        iVar10 = __overflow(p_Var6,uVar7 & 0xff);
        if (iVar10 < 0) goto LAB_00011ab9;
      }
      p_Var6 = (_IO_FILE *)*piVar9;
      pbVar13 = (byte *)p_Var6->_IO_read_ptr;
      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;
      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);
      uVar7 = (uint)*pbVar13;
LAB_00011a8c:
    } while (DAT_0001c0e8 != uVar7);
    if (local_48 != local_50) goto LAB_00011ae1;
LAB_00011b8e:
    bVar18 = (byte)uVar7;
    p_Var6 = (_IO_FILE *)*piVar14;
    pbVar13 = (byte *)p_Var6->_IO_write_ptr;
    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;
LAB_00011c45:
    iVar10 = __overflow(p_Var6,uVar7 & 0xff);
    if (-1 < iVar10) goto LAB_00011ba4;
LAB_00011ab9:
    do {
      p_Var6 = (_IO_FILE *)FUN_00011830();
LAB_00011ac0:
      uVar7 = __uflow(p_Var6);
      if (uVar7 != 0xffffffff) goto LAB_00011a8c;
      if (local_48 == local_50) {
        p_Var6 = (_IO_FILE *)*piVar14;
        uVar7 = (uint)DAT_0001c0e8;
        pbVar13 = (byte *)p_Var6->_IO_write_ptr;
        bVar18 = DAT_0001c0e8;
        if (pbVar13 < p_Var6->_IO_write_end) {
LAB_00011b9c:
          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);
          *pbVar13 = bVar18;
LAB_00011ba4:
          bVar16 = true;
          goto LAB_00011b06;
        }
        goto LAB_00011c45;
      }
LAB_00011ae1:
      piVar14 = local_28;
      bVar18 = *local_4c;
      if (bVar18 == 0) goto LAB_00011af0;
      p_Var6 = (_IO_FILE *)*local_28;
      pbVar13 = (byte *)p_Var6->_IO_write_ptr;
      if (pbVar13 < p_Var6->_IO_write_end) {
        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);
        *pbVar13 = bVar18;
        goto LAB_00011af0;
      }
      iVar10 = __overflow(p_Var6,(uint)bVar18);
      if (-1 < iVar10) {
LAB_00011af0:
        local_4c = local_4c + 1;
        bVar16 = true;
        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;
LAB_00011b06:
        while( true ) {
          pbVar13 = local_50 + 1;
          piVar9 = piVar9 + 1;
          bVar17 = local_48 <= local_50;
          local_50 = pbVar13;
          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;
          p_Var6 = (_IO_FILE *)*piVar9;
          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;
LAB_00011b37:
          piVar3 = local_44;
          piVar14 = (int *)PTR_stdout_0001bfd4;
          if (local_48 == local_50) break;
          if (*local_4c != 0) {
            *(byte *)((int)local_38 + (int)local_44) = *local_4c;
            local_44 = (int *)((int)local_44 + 1);
          }
          local_4c = local_4c + 1;
          if (DAT_0001c168 == local_4c) {
LAB_00011b6f:
            local_4c = DAT_0001c16c;
          }
        }
        if (bVar16) {
          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;
          if (local_44 != (int *)0x0) {
            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);
            if (piVar5 != piVar3) goto LAB_00011ab9;
            pFVar4 = (FILE *)*piVar14;
          }
          bVar18 = DAT_0001c0e8;
          pbVar13 = (byte *)pFVar4->_IO_write_ptr;
          if (pbVar13 < pFVar4->_IO_write_end) {
            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);
            *pbVar13 = bVar18;
          }
          else {
            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);
            if (iVar10 < 0) goto LAB_00011ab9;
          }
        }
LAB_00011bf9:
        if (local_40 == (byte *)0x0) goto LAB_00011c05;
        goto LAB_000119d5;
      }
    } while( true );
  }
LAB_00011e3f:
                    /* WARNING: Subroutine does not return */
  *(undefined **)(puVar12 + -4) = &UNK_00011e44;
  FUN_00014fb0();
}


PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x000116f0
ADD EBX,0xa787
SUB ESP,0x58
MOV EAX,dword ptr [ESP + 0x6c]
ADD EAX,0x2
PUSH EAX
CALL 0x00014cb0
MOV dword ptr [ESP + 0x34],EAX
MOV EAX,dword ptr [ESP + 0x70]
ADD ESP,0x10
ADD EAX,0x1
MOV ESI,EAX
SHR ESI,0x1e
SETNZ DL
SHL EAX,0x2
JS 0x00011e3f
MOVZX EDX,DL
TEST EDX,EDX
JNZ 0x00011e3f
SUB ESP,0xc
PUSH EAX
CALL 0x00014cb0
MOV dword ptr [ESP + 0x40],EAX
ADD ESP,0x10
MOV ESI,dword ptr [ESP + 0x60]
TEST ESI,ESI
JZ 0x00011dea
LEA EAX,[EBX + 0xffffc0ad]
MOV EBP,dword ptr [ESP + 0x64]
MOV byte ptr [ESP + 0x2b],0x0
MOV dword ptr [ESP + 0xc],EAX
LEA EAX,[EBX + 0xffffb012]
MOV EDX,dword ptr [EBX + 0xffffffd0]
MOV dword ptr [ESP + 0x14],0x0
MOV dword ptr [ESP + 0x10],EAX
JMP 0x00011928
MOV EAX,dword ptr [EDX]
MOV ESI,dword ptr [ESP + 0x30]
MOV byte ptr [EBX + 0x171],0x1
MOV EDI,dword ptr [ESP + 0x14]
MOV dword ptr [ESI + EDI*0x4],EAX
ADD dword ptr [ESP + 0x14],0x1
ADD EBP,0x4
MOV EAX,dword ptr [ESP + 0x14]
CMP dword ptr [ESP + 0x60],EAX
JZ 0x000119a7
MOV EAX,dword ptr [EBP]
MOV EDI,dword ptr [ESP + 0xc]
MOV ECX,0x2
MOV ESI,EAX
CMPSB.REPE ES:EDI,ESI
SETA CL
SBB CL,0x0
TEST CL,CL
JZ 0x00011902
MOV dword ptr [ESP + 0x18],EDX
SUB ESP,0x8
PUSH dword ptr [ESP + 0x18]
PUSH EAX
CALL 0x00011100
MOV EDI,dword ptr [ESP + 0x24]
MOV ESI,EAX
MOV EAX,dword ptr [ESP + 0x40]
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0x18]
TEST ESI,ESI
MOV dword ptr [EAX + EDI*0x4],ESI
JZ 0x00011e18
MOV dword ptr [ESP + 0x18],EDX
SUB ESP,0xc
PUSH ESI
CALL 0x00011230
POP EDX
POP ECX
MOVZX EDI,byte ptr [ESP + 0x33]
TEST EAX,EAX
MOV EAX,0x1
CMOVZ EDI,EAX
MOV EAX,EDI
MOV byte ptr [ESP + 0x33],AL
PUSH 0x2
PUSH ESI
CALL 0x000126a0
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0x18]
JMP 0x00011916
CMP byte ptr [ESP + 0x2b],0x0
JZ 0x00011dd8
CMP byte ptr [EBX + 0x171],0x0
JNZ 0x00011df4
MOV EAX,dword ptr [ESP + 0x14]
MOV dword ptr [ESP + 0x1c],EAX
MOV EAX,dword ptr [EBX + 0xffffffd4]
MOV dword ptr [ESP + 0x3c],EAX
MOV dword ptr [ESP + 0x34],EAX
MOV EBP,dword ptr [ESP + 0x30]
XOR ESI,ESI
MOV EAX,dword ptr [EBX + 0x16c]
MOV dword ptr [ESP + 0xc],0x1
MOV EDI,ESI
MOV dword ptr [ESP + 0x18],0x0
MOV ESI,dword ptr [EBP]
MOV dword ptr [ESP + 0x10],EAX
TEST ESI,ESI
JZ 0x00011b37
LEA ESI,[ESI]
MOV EAX,dword ptr [ESI + 0x4]
CMP dword ptr [ESI + 0x8],EAX
JBE 0x00011c87
LEA EDX,[EAX + 0x1]
MOV dword ptr [ESI + 0x4],EDX
MOV ESI,dword ptr [ESP + 0x18]
MOVZX ECX,byte ptr [EAX]
TEST ESI,ESI
JZ 0x00011a54
MOV ESI,dword ptr [EBX + 0xffffffd4]
MOV dword ptr [ESP + 0x20],ECX
PUSH dword ptr [ESI]
MOV EDI,dword ptr [ESP + 0x1c]
PUSH EDI
PUSH 0x1
PUSH dword ptr [ESP + 0x30]
CALL 0x00011240
ADD ESP,0x10
MOV ECX,dword ptr [ESP + 0x20]
CMP EAX,EDI
JNZ 0x00011ab9
MOV dword ptr [ESP + 0x18],0x0
MOVZX EAX,byte ptr [EBX + 0xe8]
CMP ECX,EAX
JZ 0x00011d80
MOV ESI,dword ptr [EBX + 0xffffffd4]
JMP 0x00011a9b
LEA EAX,[EDI + 0x1]
MOV dword ptr [EDX + 0x14],EAX
MOV byte ptr [EDI],CL
MOV EAX,dword ptr [EBP]
MOV EDX,dword ptr [EAX + 0x4]
CMP EDX,dword ptr [EAX + 0x8]
JNC 0x00011ac0
LEA ECX,[EDX + 0x1]
MOV dword ptr [EAX + 0x4],ECX
MOVZX ECX,byte ptr [EDX]
MOVZX EAX,byte ptr [EBX + 0xe8]
CMP EAX,ECX
JZ 0x00011b80
MOV EDX,dword ptr [ESI]
MOV EDI,dword ptr [EDX + 0x14]
CMP EDI,dword ptr [EDX + 0x18]
JC 0x00011a70
SUB ESP,0x8
MOVZX ECX,CL
PUSH ECX
PUSH EDX
CALL 0x000112b0
ADD ESP,0x10
TEST EAX,EAX
JNS 0x00011a78
CALL 0x00011830
NOP
SUB ESP,0xc
PUSH EAX
CALL 0x00011260
ADD ESP,0x10
MOV ECX,EAX
CMP EAX,-0x1
JNZ 0x00011a8c
MOV EDI,dword ptr [ESP + 0xc]
CMP dword ptr [ESP + 0x14],EDI
JZ 0x00011c30
MOV EAX,dword ptr [ESP + 0x10]
MOVZX EAX,byte ptr [EAX]
TEST AL,AL
JNZ 0x00011c68
ADD dword ptr [ESP + 0x10],0x1
MOV EDI,0x1
MOV EAX,dword ptr [ESP + 0x10]
CMP dword ptr [EBX + 0x168],EAX
JZ 0x00011b6f
MOV ECX,dword ptr [ESP + 0x1c]
MOV ESI,dword ptr [ESP + 0xc]
CMP dword ptr [ESP + 0x14],ESI
SETA DL
TEST ECX,ECX
SETNZ AL
ADD ESI,0x1
ADD EBP,0x4
MOV dword ptr [ESP + 0xc],ESI
TEST DL,AL
JZ 0x00011bf9
MOV ESI,dword ptr [EBP]
TEST ESI,ESI
JNZ 0x00011a08
MOV ESI,dword ptr [ESP + 0xc]
CMP dword ptr [ESP + 0x14],ESI
JZ 0x00011bae
MOV EAX,dword ptr [ESP + 0x10]
MOVZX EAX,byte ptr [EAX]
TEST AL,AL
JZ 0x00011b5e
MOV ESI,dword ptr [ESP + 0x18]
MOV ECX,dword ptr [ESP + 0x24]
MOV byte ptr [ECX + ESI*0x1],AL
LEA EAX,[ESI + 0x1]
MOV dword ptr [ESP + 0x18],EAX
ADD dword ptr [ESP + 0x10],0x1
MOV EAX,dword ptr [ESP + 0x10]
CMP dword ptr [EBX + 0x168],EAX
JNZ 0x00011b06
MOV EAX,dword ptr [EBX + 0x16c]
MOV dword ptr [ESP + 0x10],EAX
JMP 0x00011b06
MOV EDI,dword ptr [ESP + 0xc]
CMP dword ptr [ESP + 0x14],EDI
JNZ 0x00011ae1
MOV EAX,dword ptr [ESI]
MOV EDX,dword ptr [EAX + 0x14]
CMP EDX,dword ptr [EAX + 0x18]
JNC 0x00011c45
LEA ESI,[EDX + 0x1]
MOV dword ptr [EAX + 0x14],ESI
MOV byte ptr [EDX],CL
MOV EDI,0x1
JMP 0x00011b06
MOV EAX,EDI
TEST AL,AL
JZ 0x00011bf9
MOV ESI,dword ptr [EBX + 0xffffffd4]
MOV EDI,dword ptr [ESP + 0x18]
MOV EAX,dword ptr [ESI]
TEST EDI,EDI
JZ 0x00011bde
PUSH EAX
PUSH EDI
PUSH 0x1
PUSH dword ptr [ESP + 0x30]
CALL 0x00011240
ADD ESP,0x10
CMP EAX,EDI
JNZ 0x00011ab9
MOV EAX,dword ptr [ESI]
MOVZX ECX,byte ptr [EBX + 0xe8]
MOV EDX,dword ptr [EAX + 0x14]
CMP EDX,dword ptr [EAX + 0x18]
JNC 0x00011d97
LEA ESI,[EDX + 0x1]
MOV dword ptr [EAX + 0x14],ESI
MOV byte ptr [EDX],CL
MOV EDX,dword ptr [ESP + 0x1c]
TEST EDX,EDX
JNZ 0x000119d5
SUB ESP,0xc
PUSH dword ptr [ESP + 0x3c]
CALL 0x00011060
POP EAX
PUSH dword ptr [ESP + 0x30]
CALL 0x00011060
MOVZX EAX,byte ptr [ESP + 0x3b]
ADD ESP,0x5c
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EAX,dword ptr [ESI]
MOVZX ECX,byte ptr [EBX + 0xe8]
MOV EDX,dword ptr [EAX + 0x14]
CMP EDX,dword ptr [EAX + 0x18]
JC 0x00011b9c
SUB ESP,0x8
MOVZX ECX,CL
PUSH ECX
PUSH EAX
CALL 0x000112b0
ADD ESP,0x10
TEST EAX,EAX
JNS 0x00011ba4
JMP 0x00011ab9
MOV ESI,dword ptr [ESP + 0x34]
MOV EDX,dword ptr [ESI]
MOV ECX,dword ptr [EDX + 0x14]
CMP ECX,dword ptr [EDX + 0x18]
JNC 0x00011db8
LEA ESI,[ECX + 0x1]
MOV dword ptr [EDX + 0x14],ESI
MOV byte ptr [ECX],AL
JMP 0x00011af0
SUB ESP,0xc
PUSH ESI
CALL 0x00011260
MOV dword ptr [ESP + 0x3c],EAX
CALL 0x00011220
MOV dword ptr [ESP + 0x48],EAX
MOV EAX,dword ptr [EAX]
MOV dword ptr [ESP + 0x30],EAX
ADD ESP,0x10
MOV ECX,dword ptr [ESP + 0x2c]
MOV EAX,dword ptr [ESP + 0x18]
CMP ECX,-0x1
SETNZ DL
TEST EAX,EAX
SETNZ AL
TEST DL,AL
JNZ 0x00011a25
CMP ECX,-0x1
JNZ 0x00011a54
TEST byte ptr [ESI],0x20
JNZ 0x00011cfb
MOV EAX,dword ptr [EBX + 0xffffffd0]
CMP ESI,dword ptr [EAX]
JZ 0x00011d38
SUB ESP,0xc
PUSH ESI
CALL 0x00014ff0
ADD ESP,0x10
CMP EAX,-0x1
JZ 0x00011d46
MOV dword ptr [EBP],0x0
SUB dword ptr [ESP + 0x1c],0x1
JMP 0x00011b37
SUB ESP,0x4
MOV ECX,dword ptr [ESP + 0x10]
MOV EAX,dword ptr [ESP + 0x68]
PUSH dword ptr [EAX + ECX*0x4 + -0x4]
PUSH 0x3
PUSH 0x0
CALL 0x00014440
PUSH EAX
LEA EAX,[EBX + 0xffffb4a9]
PUSH EAX
PUSH dword ptr [ESP + 0x38]
PUSH 0x0
CALL 0x00011160
MOV EAX,dword ptr [EBX + 0xffffffd0]
ADD ESP,0x20
MOV byte ptr [ESP + 0x2b],0x0
CMP ESI,dword ptr [EAX]
JNZ 0x00011cd9
SUB ESP,0xc
PUSH ESI
CALL 0x00011290
ADD ESP,0x10
JMP 0x00011cea
SUB ESP,0x4
MOV EAX,dword ptr [ESP + 0x68]
MOV ESI,dword ptr [ESP + 0x10]
PUSH dword ptr [EAX + ESI*0x4 + -0x4]
PUSH 0x3
PUSH 0x0
CALL 0x00014440
PUSH EAX
LEA EAX,[EBX + 0xffffb4a9]
PUSH EAX
MOV EAX,dword ptr [ESP + 0x50]
PUSH dword ptr [EAX]
PUSH 0x0
CALL 0x00011160
ADD ESP,0x20
MOV byte ptr [ESP + 0x2b],0x0
JMP 0x00011cea
MOV ESI,dword ptr [ESP + 0xc]
CMP dword ptr [ESP + 0x14],ESI
JNZ 0x00011ae1
MOV ESI,dword ptr [ESP + 0x3c]
JMP 0x00011b8e
SUB ESP,0x8
PUSH ECX
PUSH EAX
CALL 0x000112b0
ADD ESP,0x10
TEST EAX,EAX
JNS 0x00011bf9
JMP 0x00011ab9
SUB ESP,0x8
PUSH EAX
PUSH EDX
CALL 0x000112b0
ADD ESP,0x10
TEST EAX,EAX
JNS 0x00011af0
JMP 0x00011ab9
MOV EAX,dword ptr [ESP + 0x14]
MOV byte ptr [ESP + 0x2b],0x1
MOV dword ptr [ESP + 0x1c],EAX
JMP 0x000119c7
MOV byte ptr [ESP + 0x2b],0x1
JMP 0x00011c05
PUSH EAX
LEA EAX,[EBX + 0xffffb014]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000110c0
ADD ESP,0xc
PUSH EAX
PUSH 0x0
PUSH 0x1
CALL 0x00011160
LEA ESI,[ESI]
SUB ESP,0x4
PUSH dword ptr [EBP]
PUSH 0x3
PUSH 0x0
CALL 0x00014440
MOV ESI,EAX
CALL 0x00011220
LEA EDX,[EBX + 0xffffb4a9]
PUSH ESI
PUSH EDX
PUSH dword ptr [EAX]
PUSH 0x1
CALL 0x00011160
CALL 0x00014fb0
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nchar FUN_00011870(byte *param_1,undefined4 *param_2)\n\n{\n  _IO_FILE *p_Var1;\n  char *pcVar2;\n  int *piVar3;\n  FILE *pFVar4;\n  int *piVar5;\n  _IO_FILE *p_Var6;\n  uint uVar7;\n  undefined4 uVar8;\n  int *piVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  byte *pbVar13;\n  int *piVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  undefined1 auStack_5c [12];\n  byte *local_50;\n  byte *local_4c;\n  byte *local_48;\n  int *local_44;\n  byte *local_40;\n  uint local_3c;\n  void *local_38;\n  char local_31;\n  uint local_30;\n  int *local_2c;\n  int *local_28;\n  uint *local_24;\n  int *local_20;\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x11879;\n  local_38 = (void *)FUN_00014cb0();\n  puVar12 = auStack_5c;\n  if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    /* WARNING: Subroutine does not return */\n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}\n\n" comment (function_definition "char FUN_00011870(byte *param_1,undefined4 *param_2)\n\n{\n  _IO_FILE *p_Var1;\n  char *pcVar2;\n  int *piVar3;\n  FILE *pFVar4;\n  int *piVar5;\n  _IO_FILE *p_Var6;\n  uint uVar7;\n  undefined4 uVar8;\n  int *piVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  byte *pbVar13;\n  int *piVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  undefined1 auStack_5c [12];\n  byte *local_50;\n  byte *local_4c;\n  byte *local_48;\n  int *local_44;\n  byte *local_40;\n  uint local_3c;\n  void *local_38;\n  char local_31;\n  uint local_30;\n  int *local_2c;\n  int *local_28;\n  uint *local_24;\n  int *local_20;\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x11879;\n  local_38 = (void *)FUN_00014cb0();\n  puVar12 = auStack_5c;\n  if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    /* WARNING: Subroutine does not return */\n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" primitive_type (function_declarator "FUN_00011870(byte *param_1,undefined4 *param_2)" identifier (parameter_list "(byte *param_1,undefined4 *param_2)" ( (parameter_declaration "byte *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined4 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  _IO_FILE *p_Var1;\n  char *pcVar2;\n  int *piVar3;\n  FILE *pFVar4;\n  int *piVar5;\n  _IO_FILE *p_Var6;\n  uint uVar7;\n  undefined4 uVar8;\n  int *piVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  byte *pbVar13;\n  int *piVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  undefined1 auStack_5c [12];\n  byte *local_50;\n  byte *local_4c;\n  byte *local_48;\n  int *local_44;\n  byte *local_40;\n  uint local_3c;\n  void *local_38;\n  char local_31;\n  uint local_30;\n  int *local_2c;\n  int *local_28;\n  uint *local_24;\n  int *local_20;\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x11879;\n  local_38 = (void *)FUN_00014cb0();\n  puVar12 = auStack_5c;\n  if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    /* WARNING: Subroutine does not return */\n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" { (declaration "_IO_FILE *p_Var1;" type_identifier (pointer_declarator "*p_Var1" * identifier) ;) (declaration "char *pcVar2;" primitive_type (pointer_declarator "*pcVar2" * identifier) ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "FILE *pFVar4;" type_identifier (pointer_declarator "*pFVar4" * identifier) ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "_IO_FILE *p_Var6;" type_identifier (pointer_declarator "*p_Var6" * identifier) ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "undefined4 uVar8;" type_identifier identifier ;) (declaration "int *piVar9;" primitive_type (pointer_declarator "*piVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined1 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined1 *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "byte *pbVar13;" type_identifier (pointer_declarator "*pbVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "byte *pbVar15;" type_identifier (pointer_declarator "*pbVar15" * identifier) ;) (declaration "bool bVar16;" primitive_type identifier ;) (declaration "bool bVar17;" primitive_type identifier ;) (declaration "byte bVar18;" type_identifier identifier ;) (declaration "undefined1 auStack_5c [12];" type_identifier (array_declarator "auStack_5c [12]" identifier [ number_literal ]) ;) (declaration "byte *local_50;" type_identifier (pointer_declarator "*local_50" * identifier) ;) (declaration "byte *local_4c;" type_identifier (pointer_declarator "*local_4c" * identifier) ;) (declaration "byte *local_48;" type_identifier (pointer_declarator "*local_48" * identifier) ;) (declaration "int *local_44;" primitive_type (pointer_declarator "*local_44" * identifier) ;) (declaration "byte *local_40;" type_identifier (pointer_declarator "*local_40" * identifier) ;) (declaration "uint local_3c;" type_identifier identifier ;) (declaration "void *local_38;" primitive_type (pointer_declarator "*local_38" * identifier) ;) (declaration "char local_31;" primitive_type identifier ;) (declaration "uint local_30;" type_identifier identifier ;) (declaration "int *local_2c;" primitive_type (pointer_declarator "*local_2c" * identifier) ;) (declaration "int *local_28;" primitive_type (pointer_declarator "*local_28" * identifier) ;) (declaration "uint *local_24;" type_identifier (pointer_declarator "*local_24" * identifier) ;) (declaration "int *local_20;" primitive_type (pointer_declarator "*local_20" * identifier) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar18 = 0;" (assignment_expression "bVar18 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x11879;" (assignment_expression "uStack_14 = 0x11879" identifier = number_literal) ;) (expression_statement "local_38 = (void *)FUN_00014cb0();" (assignment_expression "local_38 = (void *)FUN_00014cb0()" identifier = (cast_expression "(void *)FUN_00014cb0()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00014cb0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar12 = auStack_5c;" (assignment_expression "puVar12 = auStack_5c" identifier = identifier) ;) (if_statement "if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    /* WARNING: Subroutine does not return */\n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" if (parenthesized_expression "((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0))" ( (binary_expression "(-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)" (parenthesized_expression "(-1 < (int)(param_1 + 1) * 4)" ( (binary_expression "-1 < (int)(param_1 + 1) * 4" number_literal < (binary_expression "(int)(param_1 + 1) * 4" (cast_expression "(int)(param_1 + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(param_1 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) ))) * number_literal)) )) && (parenthesized_expression "(puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)" ( (comma_expression "puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0" (assignment_expression "puVar12 = auStack_5c" identifier = identifier) , (binary_expression "(uint)(param_1 + 1) >> 0x1e == 0" (binary_expression "(uint)(param_1 + 1) >> 0x1e" (call_expression "(uint)(param_1 + 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(param_1 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) ))) >> number_literal) == number_literal)) ))) )) (compound_statement "{\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    /* WARNING: Subroutine does not return */\n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" { (expression_statement "local_2c = (int *)FUN_00014cb0();" (assignment_expression "local_2c = (int *)FUN_00014cb0()" identifier = (cast_expression "(int *)FUN_00014cb0()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00014cb0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar11 = auStack_5c;" (assignment_expression "puVar11 = auStack_5c" identifier = identifier) ;) (expression_statement "bVar16 = false;" (assignment_expression "bVar16 = false" identifier = false) ;) (expression_statement "bVar17 = param_1 == (byte *)0x0;" (assignment_expression "bVar17 = param_1 == (byte *)0x0" identifier = (binary_expression "param_1 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }" if (parenthesized_expression "(bVar17)" ( identifier )) (compound_statement "{\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }" { (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (labeled_statement "LAB_00011c05:\n      free(local_2c);" statement_identifier : (expression_statement "free(local_2c);" (call_expression "free(local_2c)" identifier (argument_list "(local_2c)" ( identifier ))) ;)) (expression_statement "free(local_38);" (call_expression "free(local_38)" identifier (argument_list "(local_38)" ( identifier ))) ;) (return_statement "return local_31;" return identifier ;) })) (expression_statement "local_50 = &DAT_000180ad;" (assignment_expression "local_50 = &DAT_000180ad" identifier = (pointer_expression "&DAT_000180ad" & identifier)) ;) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_4c = (byte *)0x17012;" (assignment_expression "local_4c = (byte *)0x17012" identifier = (cast_expression "(byte *)0x17012" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_48 = (byte *)0x0;" (assignment_expression "local_48 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "piVar9 = (int *)PTR_stdin_0001bfd0;" (assignment_expression "piVar9 = (int *)PTR_stdin_0001bfd0" identifier = (cast_expression "(int *)PTR_stdin_0001bfd0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (do_statement "do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);" do (compound_statement "{\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    }" { (expression_statement "iVar10 = 2;" (assignment_expression "iVar10 = 2" identifier = number_literal) ;) (expression_statement "pbVar13 = (byte *)*param_2;" (assignment_expression "pbVar13 = (byte *)*param_2" identifier = (cast_expression "(byte *)*param_2" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_2" * identifier))) ;) (expression_statement "pbVar15 = local_50;" (assignment_expression "pbVar15 = local_50" identifier = identifier) ;) (do_statement "do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);" do (compound_statement "{\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      }" { (if_statement "if (iVar10 == 0) break;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar10 = iVar10 + -1;" (assignment_expression "iVar10 = iVar10 + -1" identifier = (binary_expression "iVar10 + -1" identifier + number_literal)) ;) (expression_statement "bVar16 = *pbVar13 < *pbVar15;" (assignment_expression "bVar16 = *pbVar13 < *pbVar15" identifier = (binary_expression "*pbVar13 < *pbVar15" (pointer_expression "*pbVar13" * identifier) < (pointer_expression "*pbVar15" * identifier))) ;) (expression_statement "bVar17 = *pbVar13 == *pbVar15;" (assignment_expression "bVar17 = *pbVar13 == *pbVar15" identifier = (binary_expression "*pbVar13 == *pbVar15" (pointer_expression "*pbVar13" * identifier) == (pointer_expression "*pbVar15" * identifier))) ;) (expression_statement "pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1" identifier = (binary_expression "pbVar13 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar13 + (uint)bVar18 * -2" identifier + (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1" identifier = (binary_expression "pbVar15 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar15 + (uint)bVar18 * -2" identifier + (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar17)" ( identifier )) ;) (if_statement "if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }" if (parenthesized_expression "((!bVar16 && !bVar17) == bVar16)" ( (binary_expression "(!bVar16 && !bVar17) == bVar16" (parenthesized_expression "(!bVar16 && !bVar17)" ( (binary_expression "!bVar16 && !bVar17" (unary_expression "!bVar16" ! identifier) && (unary_expression "!bVar17" ! identifier)) )) == identifier) )) (compound_statement "{\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }" { (expression_statement "DAT_0001c171 = '\x01';" (assignment_expression "DAT_0001c171 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_2c[(int)local_48] = *piVar9;" (assignment_expression "local_2c[(int)local_48] = *piVar9" (subscript_expression "local_2c[(int)local_48]" identifier [ (cast_expression "(int)local_48" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (pointer_expression "*piVar9" * identifier)) ;) }) (else_clause "else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }" else (compound_statement "{\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }" { (expression_statement "local_44 = piVar9;" (assignment_expression "local_44 = piVar9" identifier = identifier) ;) (expression_statement "pFVar4 = fopen64((char *)*param_2,(char *)local_4c);" (assignment_expression "pFVar4 = fopen64((char *)*param_2,(char *)local_4c)" identifier = (call_expression "fopen64((char *)*param_2,(char *)local_4c)" identifier (argument_list "((char *)*param_2,(char *)local_4c)" ( (cast_expression "(char *)*param_2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_2" * identifier)) , (cast_expression "(char *)local_4c" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "local_2c[(int)local_48] = (int)pFVar4;" (assignment_expression "local_2c[(int)local_48] = (int)pFVar4" (subscript_expression "local_2c[(int)local_48]" identifier [ (cast_expression "(int)local_48" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(int)pFVar4" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;" if (parenthesized_expression "(pFVar4 == (FILE *)0x0)" ( (binary_expression "pFVar4 == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011e18;" goto statement_identifier ;)) (expression_statement "iVar10 = fileno(pFVar4);" (assignment_expression "iVar10 = fileno(pFVar4)" identifier = (call_expression "fileno(pFVar4)" identifier (argument_list "(pFVar4)" ( identifier )))) ;) (if_statement "if (iVar10 == 0) {\n          local_31 = '\x01';\n        }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n          local_31 = '\x01';\n        }" { (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) })) (expression_statement "FUN_000126a0();" (call_expression "FUN_000126a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "piVar9 = local_44;" (assignment_expression "piVar9 = local_44" identifier = identifier) ;) }))) (expression_statement "local_48 = local_48 + 1;" (assignment_expression "local_48 = local_48 + 1" identifier = (binary_expression "local_48 + 1" identifier + number_literal)) ;) (expression_statement "param_2 = param_2 + 1;" (assignment_expression "param_2 = param_2 + 1" identifier = (binary_expression "param_2 + 1" identifier + number_literal)) ;) (expression_statement "bVar16 = param_1 < local_48;" (assignment_expression "bVar16 = param_1 < local_48" identifier = (binary_expression "param_1 < local_48" identifier < identifier)) ;) (expression_statement "bVar17 = param_1 == local_48;" (assignment_expression "bVar17 = param_1 == local_48" identifier = (binary_expression "param_1 == local_48" identifier == identifier)) ;) }) while (parenthesized_expression "(!bVar17)" ( (unary_expression "!bVar17" ! identifier) )) ;) (if_statement "if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" if (parenthesized_expression "(local_31 == '\0')" ( (binary_expression "local_31 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_31 = '\x01';\n    }" { (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }) (else_clause "else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" else (if_statement "if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" if (parenthesized_expression "(DAT_0001c171 != '\0')" ( (binary_expression "DAT_0001c171 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = &stack0xffffff94;" (assignment_expression "puVar11 = &stack0xffffff94" identifier = (pointer_expression "&stack0xffffff94" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;" statement_identifier : (expression_statement "*(undefined4 *)(puVar11 + -8) = *param_2;" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *param_2" (pointer_expression "*(undefined4 *)(puVar11 + -8)" * (cast_expression "(undefined4 *)(puVar11 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = (pointer_expression "*param_2" * identifier)) ;)) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar11 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar11 + -0x10)" * (cast_expression "(undefined4 *)(puVar11 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x11e27;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x11e27" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar8 = FUN_00014440();" (assignment_expression "uVar8 = FUN_00014440()" identifier = (call_expression "FUN_00014440()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x11e2e;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x11e2e" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar9 = __errno_location();" (assignment_expression "piVar9 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = uVar8;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = uVar8" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar11 + -0x18) = "%s";" (assignment_expression "*(char **)(puVar11 + -0x18) = "%s"" (pointer_expression "*(char **)(puVar11 + -0x18)" * (cast_expression "(char **)(puVar11 + -0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (string_literal ""%s"" " string_content ")) ;) (expression_statement "*(int *)(puVar11 + -0x1c) = *piVar9;" (assignment_expression "*(int *)(puVar11 + -0x1c) = *piVar9" (pointer_expression "*(int *)(puVar11 + -0x1c)" * (cast_expression "(int *)(puVar11 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar9" * identifier)) ;) (expression_statement "puVar12 = puVar11 + -0x20;" (assignment_expression "puVar12 = puVar11 + -0x20" identifier = (binary_expression "puVar11 + -0x20" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = 1;" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = 1" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" * (cast_expression "(undefined4 *)(puVar11 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x11e3f;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x11e3f" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_00011e3f;" goto statement_identifier ;) })))) (expression_statement "local_28 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "local_28 = (int *)PTR_stdout_0001bfd4" identifier = (cast_expression "(int *)PTR_stdout_0001bfd4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_40 = local_48;" (assignment_expression "local_40 = local_48" identifier = identifier) ;) (expression_statement "local_20 = local_28;" (assignment_expression "local_20 = local_28" identifier = identifier) ;) (labeled_statement "LAB_000119d5:\n    local_4c = DAT_0001c16c;" statement_identifier : (expression_statement "local_4c = DAT_0001c16c;" (assignment_expression "local_4c = DAT_0001c16c" identifier = identifier) ;)) (expression_statement "local_50 = (byte *)0x1;" (assignment_expression "local_50 = (byte *)0x1" identifier = (cast_expression "(byte *)0x1" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar16 = false;" (assignment_expression "bVar16 = false" identifier = false) ;) (expression_statement "local_44 = (int *)0x0;" (assignment_expression "local_44 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var6 = (_IO_FILE *)*local_2c;" (assignment_expression "p_Var6 = (_IO_FILE *)*local_2c" identifier = (cast_expression "(_IO_FILE *)*local_2c" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_2c" * identifier))) ;) (expression_statement "piVar9 = local_2c;" (assignment_expression "piVar9 = local_2c" identifier = identifier) ;) (if_statement "if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;" if (parenthesized_expression "(p_Var6 == (_IO_FILE *)0x0)" ( (binary_expression "p_Var6 == (_IO_FILE *)0x0" identifier == (cast_expression "(_IO_FILE *)0x0" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011b37;" goto statement_identifier ;)) (labeled_statement "LAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;" statement_identifier : (expression_statement "pbVar13 = (byte *)p_Var6->_IO_read_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_read_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_read_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier))) ;)) (if_statement "if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }" if (parenthesized_expression "(pbVar13 < p_Var6->_IO_read_end)" ( (binary_expression "pbVar13 < p_Var6->_IO_read_end" identifier < (field_expression "p_Var6->_IO_read_end" identifier -> field_identifier)) )) (compound_statement "{\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }" { (expression_statement "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar13 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar13 + 1)" ( (binary_expression "pbVar13 + 1" identifier + number_literal) )))) ;) (expression_statement "uVar7 = (uint)*pbVar13;" (assignment_expression "uVar7 = (uint)*pbVar13" identifier = (binary_expression "(uint)*pbVar13" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (if_statement "if (local_44 == (int *)0x0) goto LAB_00011a54;" if (parenthesized_expression "(local_44 == (int *)0x0)" ( (binary_expression "local_44 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011a54;" goto statement_identifier ;)) }) (else_clause "else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }" else (compound_statement "{\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }" { (expression_statement "local_30 = __uflow(p_Var6);" (assignment_expression "local_30 = __uflow(p_Var6)" identifier = (call_expression "__uflow(p_Var6)" identifier (argument_list "(p_Var6)" ( identifier )))) ;) (expression_statement "local_24 = (uint *)__errno_location();" (assignment_expression "local_24 = (uint *)__errno_location()" identifier = (cast_expression "(uint *)__errno_location()" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "__errno_location()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_3c = *local_24;" (assignment_expression "local_3c = *local_24" identifier = (pointer_expression "*local_24" * identifier)) ;) (expression_statement "uVar7 = local_30;" (assignment_expression "uVar7 = local_30" identifier = identifier) ;) (if_statement "if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }" if (parenthesized_expression "(local_30 == 0xffffffff || local_44 == (int *)0x0)" ( (binary_expression "local_30 == 0xffffffff || local_44 == (int *)0x0" (binary_expression "local_30 == 0xffffffff" identifier == number_literal) || (binary_expression "local_44 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }" { (if_statement "if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }" if (parenthesized_expression "(local_30 == 0xffffffff)" ( (binary_expression "local_30 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }" { (if_statement "if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" if (parenthesized_expression "((p_Var6->_flags & 0x20) == 0)" ( (binary_expression "(p_Var6->_flags & 0x20) == 0" (parenthesized_expression "(p_Var6->_flags & 0x20)" ( (binary_expression "p_Var6->_flags & 0x20" (field_expression "p_Var6->_flags" identifier -> field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" { (expression_statement "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;" (assignment_expression "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0" identifier = (pointer_expression "*(_IO_FILE **)PTR_stdin_0001bfd0" * (cast_expression "(_IO_FILE **)PTR_stdin_0001bfd0" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) }) (else_clause "else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" else (compound_statement "{\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" { (expression_statement "uVar8 = FUN_00014440();" (assignment_expression "uVar8 = FUN_00014440()" identifier = (call_expression "FUN_00014440()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,local_3c,"%s",uVar8);" (call_expression "error(0,local_3c,"%s",uVar8)" identifier (argument_list "(0,local_3c,"%s",uVar8)" ( number_literal , identifier , (string_literal ""%s"" " string_content ") , identifier ))) ;) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;" (assignment_expression "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0" identifier = (pointer_expression "*(_IO_FILE **)PTR_stdin_0001bfd0" * (cast_expression "(_IO_FILE **)PTR_stdin_0001bfd0" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) }))) (if_statement "if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }" if (parenthesized_expression "(p_Var6 == p_Var1)" ( (binary_expression "p_Var6 == p_Var1" identifier == identifier) )) (compound_statement "{\n            clearerr_unlocked(p_Var6);\n          }" { (expression_statement "clearerr_unlocked(p_Var6);" (call_expression "clearerr_unlocked(p_Var6)" identifier (argument_list "(p_Var6)" ( identifier ))) ;) }) (else_clause "else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }" else (compound_statement "{\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }" { (expression_statement "iVar10 = FUN_00014ff0();" (assignment_expression "iVar10 = FUN_00014ff0()" identifier = (call_expression "FUN_00014ff0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }" if (parenthesized_expression "(iVar10 == -1)" ( (binary_expression "iVar10 == -1" identifier == number_literal) )) (compound_statement "{\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }" { (expression_statement "uVar8 = FUN_00014440();" (assignment_expression "uVar8 = FUN_00014440()" identifier = (call_expression "FUN_00014440()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*local_24,"%s",uVar8);" (call_expression "error(0,*local_24,"%s",uVar8)" identifier (argument_list "(0,*local_24,"%s",uVar8)" ( number_literal , (pointer_expression "*local_24" * identifier) , (string_literal ""%s"" " string_content ") , identifier ))) ;) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) })) }))) (expression_statement "*piVar9 = 0;" (assignment_expression "*piVar9 = 0" (pointer_expression "*piVar9" * identifier) = number_literal) ;) (expression_statement "local_40 = local_40 + -1;" (assignment_expression "local_40 = local_40 + -1" identifier = (binary_expression "local_40 + -1" identifier + number_literal)) ;) (goto_statement "goto LAB_00011b37;" goto statement_identifier ;) })) (goto_statement "goto LAB_00011a54;" goto statement_identifier ;) })) }))) (expression_statement "piVar3 = local_44;" (assignment_expression "piVar3 = local_44" identifier = identifier) ;) (expression_statement "piVar14 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "piVar14 = (int *)PTR_stdout_0001bfd4" identifier = (cast_expression "(int *)PTR_stdout_0001bfd4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_3c = uVar7;" (assignment_expression "local_3c = uVar7" identifier = identifier) ;) (expression_statement "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);" (assignment_expression "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" identifier = (cast_expression "(int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" identifier (argument_list "(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" ( identifier , number_literal , (cast_expression "(size_t)local_44" ( (type_descriptor "size_t" primitive_type) ) identifier) , (pointer_expression "*(FILE **)PTR_stdout_0001bfd4" * (cast_expression "(FILE **)PTR_stdout_0001bfd4" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))))) ;) (if_statement "if (piVar5 != piVar3) goto LAB_00011ab9;" if (parenthesized_expression "(piVar5 != piVar3)" ( (binary_expression "piVar5 != piVar3" identifier != identifier) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) (expression_statement "local_44 = (int *)0x0;" (assignment_expression "local_44 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar7 = local_3c;" (assignment_expression "uVar7 = local_3c" identifier = identifier) ;) (labeled_statement "LAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;" statement_identifier : (expression_statement "piVar14 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "piVar14 = (int *)PTR_stdout_0001bfd4" identifier = (cast_expression "(int *)PTR_stdout_0001bfd4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (if_statement "if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }" if (parenthesized_expression "(uVar7 == DAT_0001c0e8)" ( (binary_expression "uVar7 == DAT_0001c0e8" identifier == identifier) )) (compound_statement "{\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }" { (expression_statement "piVar14 = local_20;" (assignment_expression "piVar14 = local_20" identifier = identifier) ;) (if_statement "if (local_48 != local_50) goto LAB_00011ae1;" if (parenthesized_expression "(local_48 != local_50)" ( (binary_expression "local_48 != local_50" identifier != identifier) )) (goto_statement "goto LAB_00011ae1;" goto statement_identifier ;)) (goto_statement "goto LAB_00011b8e;" goto statement_identifier ;) })) (ERROR "do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    /* WARNING: Subroutine does not return */\n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();" do (compound_statement "{\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }" { (expression_statement "p_Var6 = (_IO_FILE *)*piVar14;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar14" identifier = (cast_expression "(_IO_FILE *)*piVar14" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) (expression_statement "pcVar2 = p_Var6->_IO_write_ptr;" (assignment_expression "pcVar2 = p_Var6->_IO_write_ptr" identifier = (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier)) ;) (if_statement "if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }" if (parenthesized_expression "(pcVar2 < p_Var6->_IO_write_end)" ( (binary_expression "pcVar2 < p_Var6->_IO_write_end" identifier < (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }" { (expression_statement "p_Var6->_IO_write_ptr = pcVar2 + 1;" (assignment_expression "p_Var6->_IO_write_ptr = pcVar2 + 1" (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier) = (binary_expression "pcVar2 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar2 = (char)uVar7;" (assignment_expression "*pcVar2 = (char)uVar7" (pointer_expression "*pcVar2" * identifier) = (cast_expression "(char)uVar7" ( (type_descriptor "char" primitive_type) ) identifier)) ;) }) (else_clause "else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }" else (compound_statement "{\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }" { (expression_statement "iVar10 = __overflow(p_Var6,uVar7 & 0xff);" (assignment_expression "iVar10 = __overflow(p_Var6,uVar7 & 0xff)" identifier = (call_expression "__overflow(p_Var6,uVar7 & 0xff)" identifier (argument_list "(p_Var6,uVar7 & 0xff)" ( identifier , (binary_expression "uVar7 & 0xff" identifier & number_literal) )))) ;) (if_statement "if (iVar10 < 0) goto LAB_00011ab9;" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) }))) (expression_statement "p_Var6 = (_IO_FILE *)*piVar9;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar9" identifier = (cast_expression "(_IO_FILE *)*piVar9" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar9" * identifier))) ;) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_read_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_read_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_read_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier))) ;) (if_statement "if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;" if (parenthesized_expression "(p_Var6->_IO_read_end <= pbVar13)" ( (binary_expression "p_Var6->_IO_read_end <= pbVar13" (field_expression "p_Var6->_IO_read_end" identifier -> field_identifier) <= identifier) )) (goto_statement "goto LAB_00011ac0;" goto statement_identifier ;)) (expression_statement "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar13 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar13 + 1)" ( (binary_expression "pbVar13 + 1" identifier + number_literal) )))) ;) (expression_statement "uVar7 = (uint)*pbVar13;" (assignment_expression "uVar7 = (uint)*pbVar13" identifier = (binary_expression "(uint)*pbVar13" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (labeled_statement "LAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);" statement_identifier : (ERROR "}" }) (while_statement "while (DAT_0001c0e8 != uVar7);" while (parenthesized_expression "(DAT_0001c0e8 != uVar7)" ( (binary_expression "DAT_0001c0e8 != uVar7" identifier != identifier) )) (expression_statement ";" ;))) (if_statement "if (local_48 != local_50) goto LAB_00011ae1;" if (parenthesized_expression "(local_48 != local_50)" ( (binary_expression "local_48 != local_50" identifier != identifier) )) (goto_statement "goto LAB_00011ae1;" goto statement_identifier ;)) (labeled_statement "LAB_00011b8e:\n    bVar18 = (byte)uVar7;" statement_identifier : (expression_statement "bVar18 = (byte)uVar7;" (assignment_expression "bVar18 = (byte)uVar7" identifier = (cast_expression "(byte)uVar7" ( (type_descriptor "byte" type_identifier) ) identifier)) ;)) (expression_statement "p_Var6 = (_IO_FILE *)*piVar14;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar14" identifier = (cast_expression "(_IO_FILE *)*piVar14" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_write_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier))) ;) (if_statement "if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;" if (parenthesized_expression "(pbVar13 < p_Var6->_IO_write_end)" ( (binary_expression "pbVar13 < p_Var6->_IO_write_end" identifier < (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier)) )) (goto_statement "goto LAB_00011b9c;" goto statement_identifier ;)) (labeled_statement "LAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);" statement_identifier : (expression_statement "iVar10 = __overflow(p_Var6,uVar7 & 0xff);" (assignment_expression "iVar10 = __overflow(p_Var6,uVar7 & 0xff)" identifier = (call_expression "__overflow(p_Var6,uVar7 & 0xff)" identifier (argument_list "(p_Var6,uVar7 & 0xff)" ( identifier , (binary_expression "uVar7 & 0xff" identifier & number_literal) )))) ;)) (if_statement "if (-1 < iVar10) goto LAB_00011ba4;" if (parenthesized_expression "(-1 < iVar10)" ( (binary_expression "-1 < iVar10" number_literal < identifier) )) (goto_statement "goto LAB_00011ba4;" goto statement_identifier ;)) (labeled_statement "LAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );" statement_identifier : (do_statement "do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );" do (compound_statement "{\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    }" { (expression_statement "p_Var6 = (_IO_FILE *)FUN_00011830();" (assignment_expression "p_Var6 = (_IO_FILE *)FUN_00011830()" identifier = (cast_expression "(_IO_FILE *)FUN_00011830()" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00011830()" identifier (argument_list "()" ( ))))) ;) (labeled_statement "LAB_00011ac0:\n      uVar7 = __uflow(p_Var6);" statement_identifier : (expression_statement "uVar7 = __uflow(p_Var6);" (assignment_expression "uVar7 = __uflow(p_Var6)" identifier = (call_expression "__uflow(p_Var6)" identifier (argument_list "(p_Var6)" ( identifier )))) ;)) (if_statement "if (uVar7 != 0xffffffff) goto LAB_00011a8c;" if (parenthesized_expression "(uVar7 != 0xffffffff)" ( (binary_expression "uVar7 != 0xffffffff" identifier != number_literal) )) (goto_statement "goto LAB_00011a8c;" goto statement_identifier ;)) (if_statement "if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }" if (parenthesized_expression "(local_48 == local_50)" ( (binary_expression "local_48 == local_50" identifier == identifier) )) (compound_statement "{\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }" { (expression_statement "p_Var6 = (_IO_FILE *)*piVar14;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar14" identifier = (cast_expression "(_IO_FILE *)*piVar14" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) (expression_statement "uVar7 = (uint)DAT_0001c0e8;" (assignment_expression "uVar7 = (uint)DAT_0001c0e8" identifier = (cast_expression "(uint)DAT_0001c0e8" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_write_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier))) ;) (expression_statement "bVar18 = DAT_0001c0e8;" (assignment_expression "bVar18 = DAT_0001c0e8" identifier = identifier) ;) (if_statement "if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }" if (parenthesized_expression "(pbVar13 < p_Var6->_IO_write_end)" ( (binary_expression "pbVar13 < p_Var6->_IO_write_end" identifier < (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }" { (labeled_statement "LAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);" statement_identifier : (expression_statement "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar13 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar13 + 1)" ( (binary_expression "pbVar13 + 1" identifier + number_literal) )))) ;)) (expression_statement "*pbVar13 = bVar18;" (assignment_expression "*pbVar13 = bVar18" (pointer_expression "*pbVar13" * identifier) = identifier) ;) (labeled_statement "LAB_00011ba4:\n          bVar16 = true;" statement_identifier : (expression_statement "bVar16 = true;" (assignment_expression "bVar16 = true" identifier = true) ;)) (goto_statement "goto LAB_00011b06;" goto statement_identifier ;) })) (goto_statement "goto LAB_00011c45;" goto statement_identifier ;) })) (labeled_statement "LAB_00011ae1:\n      piVar14 = local_28;" statement_identifier : (expression_statement "piVar14 = local_28;" (assignment_expression "piVar14 = local_28" identifier = identifier) ;)) (expression_statement "bVar18 = *local_4c;" (assignment_expression "bVar18 = *local_4c" identifier = (pointer_expression "*local_4c" * identifier)) ;) (if_statement "if (bVar18 == 0) goto LAB_00011af0;" if (parenthesized_expression "(bVar18 == 0)" ( (binary_expression "bVar18 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00011af0;" goto statement_identifier ;)) (expression_statement "p_Var6 = (_IO_FILE *)*local_28;" (assignment_expression "p_Var6 = (_IO_FILE *)*local_28" identifier = (cast_expression "(_IO_FILE *)*local_28" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_28" * identifier))) ;) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_write_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier))) ;) (if_statement "if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }" if (parenthesized_expression "(pbVar13 < p_Var6->_IO_write_end)" ( (binary_expression "pbVar13 < p_Var6->_IO_write_end" identifier < (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }" { (expression_statement "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar13 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar13 + 1)" ( (binary_expression "pbVar13 + 1" identifier + number_literal) )))) ;) (expression_statement "*pbVar13 = bVar18;" (assignment_expression "*pbVar13 = bVar18" (pointer_expression "*pbVar13" * identifier) = identifier) ;) (goto_statement "goto LAB_00011af0;" goto statement_identifier ;) })) (expression_statement "iVar10 = __overflow(p_Var6,(uint)bVar18);" (assignment_expression "iVar10 = __overflow(p_Var6,(uint)bVar18)" identifier = (call_expression "__overflow(p_Var6,(uint)bVar18)" identifier (argument_list "(p_Var6,(uint)bVar18)" ( identifier , (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (if_statement "if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }" if (parenthesized_expression "(-1 < iVar10)" ( (binary_expression "-1 < iVar10" number_literal < identifier) )) (compound_statement "{\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }" { (labeled_statement "LAB_00011af0:\n        local_4c = local_4c + 1;" statement_identifier : (expression_statement "local_4c = local_4c + 1;" (assignment_expression "local_4c = local_4c + 1" identifier = (binary_expression "local_4c + 1" identifier + number_literal)) ;)) (expression_statement "bVar16 = true;" (assignment_expression "bVar16 = true" identifier = true) ;) (if_statement "if (DAT_0001c168 == local_4c) goto LAB_00011b6f;" if (parenthesized_expression "(DAT_0001c168 == local_4c)" ( (binary_expression "DAT_0001c168 == local_4c" identifier == identifier) )) (goto_statement "goto LAB_00011b6f;" goto statement_identifier ;)) (labeled_statement "LAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }" statement_identifier : (while_statement "while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }" { (expression_statement "pbVar13 = local_50 + 1;" (assignment_expression "pbVar13 = local_50 + 1" identifier = (binary_expression "local_50 + 1" identifier + number_literal)) ;) (expression_statement "piVar9 = piVar9 + 1;" (assignment_expression "piVar9 = piVar9 + 1" identifier = (binary_expression "piVar9 + 1" identifier + number_literal)) ;) (expression_statement "bVar17 = local_48 <= local_50;" (assignment_expression "bVar17 = local_48 <= local_50" identifier = (binary_expression "local_48 <= local_50" identifier <= identifier)) ;) (expression_statement "local_50 = pbVar13;" (assignment_expression "local_50 = pbVar13" identifier = identifier) ;) (if_statement "if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;" if (parenthesized_expression "(bVar17 || local_40 == (byte *)0x0)" ( (binary_expression "bVar17 || local_40 == (byte *)0x0" identifier || (binary_expression "local_40 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (goto_statement "goto LAB_00011bf9;" goto statement_identifier ;)) (expression_statement "p_Var6 = (_IO_FILE *)*piVar9;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar9" identifier = (cast_expression "(_IO_FILE *)*piVar9" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar9" * identifier))) ;) (if_statement "if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;" if (parenthesized_expression "(p_Var6 != (_IO_FILE *)0x0)" ( (binary_expression "p_Var6 != (_IO_FILE *)0x0" identifier != (cast_expression "(_IO_FILE *)0x0" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011a08;" goto statement_identifier ;)) (labeled_statement "LAB_00011b37:\n          piVar3 = local_44;" statement_identifier : (expression_statement "piVar3 = local_44;" (assignment_expression "piVar3 = local_44" identifier = identifier) ;)) (expression_statement "piVar14 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "piVar14 = (int *)PTR_stdout_0001bfd4" identifier = (cast_expression "(int *)PTR_stdout_0001bfd4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (local_48 == local_50) break;" if (parenthesized_expression "(local_48 == local_50)" ( (binary_expression "local_48 == local_50" identifier == identifier) )) (break_statement "break;" break ;)) (if_statement "if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }" if (parenthesized_expression "(*local_4c != 0)" ( (binary_expression "*local_4c != 0" (pointer_expression "*local_4c" * identifier) != number_literal) )) (compound_statement "{\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }" { (expression_statement "*(byte *)((int)local_38 + (int)local_44) = *local_4c;" (assignment_expression "*(byte *)((int)local_38 + (int)local_44) = *local_4c" (pointer_expression "*(byte *)((int)local_38 + (int)local_44)" * (cast_expression "(byte *)((int)local_38 + (int)local_44)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_38 + (int)local_44)" ( (binary_expression "(int)local_38 + (int)local_44" (cast_expression "(int)local_38" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_44" ( (type_descriptor "int" primitive_type) ) identifier)) )))) = (pointer_expression "*local_4c" * identifier)) ;) (expression_statement "local_44 = (int *)((int)local_44 + 1);" (assignment_expression "local_44 = (int *)((int)local_44 + 1)" identifier = (cast_expression "(int *)((int)local_44 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_44 + 1)" ( (binary_expression "(int)local_44 + 1" (cast_expression "(int)local_44" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) })) (expression_statement "local_4c = local_4c + 1;" (assignment_expression "local_4c = local_4c + 1" identifier = (binary_expression "local_4c + 1" identifier + number_literal)) ;) (if_statement "if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }" if (parenthesized_expression "(DAT_0001c168 == local_4c)" ( (binary_expression "DAT_0001c168 == local_4c" identifier == identifier) )) (compound_statement "{\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }" { (labeled_statement "LAB_00011b6f:\n            local_4c = DAT_0001c16c;" statement_identifier : (expression_statement "local_4c = DAT_0001c16c;" (assignment_expression "local_4c = DAT_0001c16c" identifier = identifier) ;)) })) }))) (if_statement "if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }" if (parenthesized_expression "(bVar16)" ( identifier )) (compound_statement "{\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }" { (expression_statement "pFVar4 = *(FILE **)PTR_stdout_0001bfd4;" (assignment_expression "pFVar4 = *(FILE **)PTR_stdout_0001bfd4" identifier = (pointer_expression "*(FILE **)PTR_stdout_0001bfd4" * (cast_expression "(FILE **)PTR_stdout_0001bfd4" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (if_statement "if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }" if (parenthesized_expression "(local_44 != (int *)0x0)" ( (binary_expression "local_44 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }" { (expression_statement "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);" (assignment_expression "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4)" identifier = (cast_expression "(int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4)" identifier (argument_list "(local_38,1,(size_t)local_44,pFVar4)" ( identifier , number_literal , (cast_expression "(size_t)local_44" ( (type_descriptor "size_t" primitive_type) ) identifier) , identifier ))))) ;) (if_statement "if (piVar5 != piVar3) goto LAB_00011ab9;" if (parenthesized_expression "(piVar5 != piVar3)" ( (binary_expression "piVar5 != piVar3" identifier != identifier) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) (expression_statement "pFVar4 = (FILE *)*piVar14;" (assignment_expression "pFVar4 = (FILE *)*piVar14" identifier = (cast_expression "(FILE *)*piVar14" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) })) (expression_statement "bVar18 = DAT_0001c0e8;" (assignment_expression "bVar18 = DAT_0001c0e8" identifier = identifier) ;) (expression_statement "pbVar13 = (byte *)pFVar4->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)pFVar4->_IO_write_ptr" identifier = (cast_expression "(byte *)pFVar4->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pFVar4->_IO_write_ptr" identifier -> field_identifier))) ;) (if_statement "if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }" if (parenthesized_expression "(pbVar13 < pFVar4->_IO_write_end)" ( (binary_expression "pbVar13 < pFVar4->_IO_write_end" identifier < (field_expression "pFVar4->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }" { (expression_statement "pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);" (assignment_expression "pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1)" (field_expression "pFVar4->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar13 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar13 + 1)" ( (binary_expression "pbVar13 + 1" identifier + number_literal) )))) ;) (expression_statement "*pbVar13 = bVar18;" (assignment_expression "*pbVar13 = bVar18" (pointer_expression "*pbVar13" * identifier) = identifier) ;) }) (else_clause "else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }" else (compound_statement "{\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }" { (expression_statement "iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);" (assignment_expression "iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8)" identifier = (call_expression "__overflow(pFVar4,(uint)DAT_0001c0e8)" identifier (argument_list "(pFVar4,(uint)DAT_0001c0e8)" ( identifier , (cast_expression "(uint)DAT_0001c0e8" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (if_statement "if (iVar10 < 0) goto LAB_00011ab9;" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) }))) })) (labeled_statement "LAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;" statement_identifier : (if_statement "if (local_40 == (byte *)0x0) goto LAB_00011c05;" if (parenthesized_expression "(local_40 == (byte *)0x0)" ( (binary_expression "local_40 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011c05;" goto statement_identifier ;))) (goto_statement "goto LAB_000119d5;" goto statement_identifier ;) })) }) while (parenthesized_expression "( true )" ( true )) ;)) }) identifier : comment * ( identifier * * ) ( identifier + number_literal ) = & identifier ; identifier ( ) ;) })) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention */\n\n_Bool paste_parallel(size_t nfiles,char **fnamptr)\n\n{\n  _IO_FILE *p_Var1;\n  undefined *puVar2;\n  size_t n;\n  FILE *pFVar3;\n  int *piVar4;\n  int *piVar5;\n  _IO_FILE *p_Var6;\n  char *pcVar7;\n  uchar uVar8;\n  int iVar9;\n  uint uVar10;\n  uchar *puVar11;\n  undefined1 *puVar12;\n  undefined1 *puVar13;\n  char **ppcVar14;\n  byte *pbVar15;\n  int *piVar16;\n  byte *pbVar17;\n  bool bVar18;\n  bool bVar19;\n  byte bVar20;\n  undefined1 auStack_5c [12];\n  byte *local_50;\n  byte *local_4c;\n  byte *local_48;\n  int *local_44;\n  byte *local_40;\n  uint local_3c;\n  void *local_38;\n  char local_31;\n  uint local_30;\n  int *local_2c;\n  int *local_28;\n  uint *local_24;\n  int *local_20;\n  undefined4 uStack_14;\n  \n  bVar20 = 0;\n  uStack_14 = 0x11879;\n  local_38 = xmalloc(nfiles + 2);\n  n = (nfiles + 1) * 4;\n  puVar13 = auStack_5c;\n  if ((-1 < (int)n) && (puVar13 = auStack_5c, nfiles + 1 >> 0x1e == 0)) {\n    local_2c = (int *)xmalloc(n);\n    puVar12 = auStack_5c;\n    bVar18 = false;\n    bVar19 = nfiles == 0;\n    if (bVar19) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return (_Bool)local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar5 = (int *)PTR_stdin_0001bfd0;\n    ppcVar14 = fnamptr;\n    do {\n      iVar9 = 2;\n      pbVar15 = (byte *)*ppcVar14;\n      pbVar17 = local_50;\n      do {\n        if (iVar9 == 0) break;\n        iVar9 = iVar9 + -1;\n        bVar18 = *pbVar15 < *pbVar17;\n        bVar19 = *pbVar15 == *pbVar17;\n        pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1;\n        pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1;\n      } while (bVar19);\n      if ((!bVar18 && !bVar19) == bVar18) {\n        have_read_stdin = true;\n        local_2c[(int)local_48] = *piVar5;\n      }\n      else {\n        local_44 = piVar5;\n        pFVar3 = fopen64(*ppcVar14,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar3;\n        if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;\n        iVar9 = fileno(pFVar3);\n        if (iVar9 == 0) {\n          local_31 = '\x01';\n        }\n        fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);\n        piVar5 = local_44;\n      }\n      local_48 = local_48 + 1;\n      ppcVar14 = ppcVar14 + 1;\n      bVar18 = nfiles < local_48;\n      bVar19 = (byte *)nfiles == local_48;\n    } while (!bVar19);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (have_read_stdin != false) {\n      dcgettext();\n      puVar12 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(char **)(puVar12 + -8) = *ppcVar14;\n      *(undefined4 *)(puVar12 + -0xc) = 3;\n      *(undefined4 *)(puVar12 + -0x10) = 0;\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e27;\n      pcVar7 = quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8));\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e2e;\n      piVar5 = __errno_location();\n      *(char **)(puVar12 + -0x14) = pcVar7;\n      *(char **)(puVar12 + -0x18) = "%s";\n      *(int *)(puVar12 + -0x1c) = *piVar5;\n      puVar13 = puVar12 + -0x20;\n      *(undefined4 *)(puVar12 + -0x20) = 1;\n      *(undefined4 *)(puVar12 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = (byte *)delims;\n    local_50 = (byte *)0x1;\n    bVar18 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar5 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar15 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n      uVar10 = (uint)*pbVar15;\n      if (local_44 != (int *)0x0) {\nLAB_00011a25:\n        piVar16 = local_44;\n        local_3c = uVar10;\n        piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n        if (piVar4 != piVar16) goto LAB_00011ab9;\n        local_44 = (int *)0x0;\n        uVar10 = local_3c;\n      }\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar10 = local_30;\n      if (local_30 != 0xffffffff && local_44 != (int *)0x0) goto LAB_00011a25;\n      if (local_30 == 0xffffffff) {\n        if ((p_Var6->_flags & 0x20) == 0) {\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        if (p_Var6 == p_Var1) {\n          clearerr_unlocked(p_Var6);\n        }\n        else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }\n        *piVar5 = 0;\n        local_40 = local_40 + -1;\n        goto LAB_00011b37;\n      }\n    }\n    piVar16 = (int *)PTR_stdout_0001bfd4;\n    if (uVar10 == line_delim) {\n      piVar16 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n    }\n    else {\n      do {\n        p_Var6 = (_IO_FILE *)*piVar16;\n        pcVar7 = p_Var6->_IO_write_ptr;\n        if (pcVar7 < p_Var6->_IO_write_end) {\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }\n        else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }\n        p_Var6 = (_IO_FILE *)*piVar5;\n        pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n        if (pbVar15 < p_Var6->_IO_read_end) {\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }\n        else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }\n      } while (line_delim != uVar10);\n      if (local_48 != local_50) {\nLAB_00011ae1:\n        bVar20 = *local_4c;\n        if (bVar20 != 0) {\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }\n        local_4c = local_4c + 1;\n        bVar18 = true;\n        if ((byte *)delim_end == local_4c) goto LAB_00011b6f;\n        goto LAB_00011b06;\n      }\n    }\n    p_Var6 = (_IO_FILE *)*piVar16;\n    puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n    uVar8 = (uchar)uVar10;\n    if (puVar11 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n      p_Var6->_IO_write_ptr = (char *)(puVar11 + 1);\n      *puVar11 = uVar8;\n    }\n    else {\nLAB_00011c45:\n      iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n      if (iVar9 < 0) {\nLAB_00011ab9:\n                    /* WARNING: Subroutine does not return */\n        write_error();\n      }\n    }\n    bVar18 = true;\nLAB_00011b06:\n    pbVar15 = local_50 + 1;\n    piVar5 = piVar5 + 1;\n    bVar19 = local_50 < local_48;\n    local_50 = pbVar15;\n    if (bVar19 && local_40 != (byte *)0x0) {\n      p_Var6 = (_IO_FILE *)*piVar5;\n      if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n      piVar16 = local_44;\n      puVar2 = PTR_stdout_0001bfd4;\n      if (local_48 != local_50) {\n        if (*local_4c != 0) {\n          *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n          local_44 = (int *)((int)local_44 + 1);\n        }\n        local_4c = local_4c + 1;\n        if ((byte *)delim_end == local_4c) {\nLAB_00011b6f:\n          local_4c = (byte *)delims;\n        }\n        goto LAB_00011b06;\n      }\n      if (bVar18) {\n        pFVar3 = *(FILE **)PTR_stdout_0001bfd4;\n        if (local_44 != (int *)0x0) {\n          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);\n          if (piVar5 != piVar16) goto LAB_00011ab9;\n          pFVar3 = *(FILE **)puVar2;\n        }\n        uVar8 = line_delim;\n        puVar11 = (uchar *)pFVar3->_IO_write_ptr;\n        if (pFVar3->_IO_write_end <= puVar11) {\n          iVar9 = __overflow(pFVar3,(uint)line_delim);\n          if (-1 < iVar9) goto LAB_00011bf9;\n          goto LAB_00011ab9;\n        }\n        pFVar3->_IO_write_ptr = (char *)(puVar11 + 1);\n        *puVar11 = uVar8;\n      }\n    }\nLAB_00011bf9:\n    if (local_40 == (byte *)0x0) goto LAB_00011c05;\n    goto LAB_000119d5;\n  }\nLAB_00011e3f:\n                    /* WARNING: Subroutine does not return */\n  *(undefined **)(puVar13 + -4) = &UNK_00011e44;\n  xalloc_die();\n}\n\n" comment comment (function_definition "_Bool paste_parallel(size_t nfiles,char **fnamptr)\n\n{\n  _IO_FILE *p_Var1;\n  undefined *puVar2;\n  size_t n;\n  FILE *pFVar3;\n  int *piVar4;\n  int *piVar5;\n  _IO_FILE *p_Var6;\n  char *pcVar7;\n  uchar uVar8;\n  int iVar9;\n  uint uVar10;\n  uchar *puVar11;\n  undefined1 *puVar12;\n  undefined1 *puVar13;\n  char **ppcVar14;\n  byte *pbVar15;\n  int *piVar16;\n  byte *pbVar17;\n  bool bVar18;\n  bool bVar19;\n  byte bVar20;\n  undefined1 auStack_5c [12];\n  byte *local_50;\n  byte *local_4c;\n  byte *local_48;\n  int *local_44;\n  byte *local_40;\n  uint local_3c;\n  void *local_38;\n  char local_31;\n  uint local_30;\n  int *local_2c;\n  int *local_28;\n  uint *local_24;\n  int *local_20;\n  undefined4 uStack_14;\n  \n  bVar20 = 0;\n  uStack_14 = 0x11879;\n  local_38 = xmalloc(nfiles + 2);\n  n = (nfiles + 1) * 4;\n  puVar13 = auStack_5c;\n  if ((-1 < (int)n) && (puVar13 = auStack_5c, nfiles + 1 >> 0x1e == 0)) {\n    local_2c = (int *)xmalloc(n);\n    puVar12 = auStack_5c;\n    bVar18 = false;\n    bVar19 = nfiles == 0;\n    if (bVar19) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return (_Bool)local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar5 = (int *)PTR_stdin_0001bfd0;\n    ppcVar14 = fnamptr;\n    do {\n      iVar9 = 2;\n      pbVar15 = (byte *)*ppcVar14;\n      pbVar17 = local_50;\n      do {\n        if (iVar9 == 0) break;\n        iVar9 = iVar9 + -1;\n        bVar18 = *pbVar15 < *pbVar17;\n        bVar19 = *pbVar15 == *pbVar17;\n        pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1;\n        pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1;\n      } while (bVar19);\n      if ((!bVar18 && !bVar19) == bVar18) {\n        have_read_stdin = true;\n        local_2c[(int)local_48] = *piVar5;\n      }\n      else {\n        local_44 = piVar5;\n        pFVar3 = fopen64(*ppcVar14,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar3;\n        if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;\n        iVar9 = fileno(pFVar3);\n        if (iVar9 == 0) {\n          local_31 = '\x01';\n        }\n        fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);\n        piVar5 = local_44;\n      }\n      local_48 = local_48 + 1;\n      ppcVar14 = ppcVar14 + 1;\n      bVar18 = nfiles < local_48;\n      bVar19 = (byte *)nfiles == local_48;\n    } while (!bVar19);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (have_read_stdin != false) {\n      dcgettext();\n      puVar12 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(char **)(puVar12 + -8) = *ppcVar14;\n      *(undefined4 *)(puVar12 + -0xc) = 3;\n      *(undefined4 *)(puVar12 + -0x10) = 0;\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e27;\n      pcVar7 = quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8));\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e2e;\n      piVar5 = __errno_location();\n      *(char **)(puVar12 + -0x14) = pcVar7;\n      *(char **)(puVar12 + -0x18) = "%s";\n      *(int *)(puVar12 + -0x1c) = *piVar5;\n      puVar13 = puVar12 + -0x20;\n      *(undefined4 *)(puVar12 + -0x20) = 1;\n      *(undefined4 *)(puVar12 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = (byte *)delims;\n    local_50 = (byte *)0x1;\n    bVar18 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar5 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar15 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n      uVar10 = (uint)*pbVar15;\n      if (local_44 != (int *)0x0) {\nLAB_00011a25:\n        piVar16 = local_44;\n        local_3c = uVar10;\n        piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n        if (piVar4 != piVar16) goto LAB_00011ab9;\n        local_44 = (int *)0x0;\n        uVar10 = local_3c;\n      }\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar10 = local_30;\n      if (local_30 != 0xffffffff && local_44 != (int *)0x0) goto LAB_00011a25;\n      if (local_30 == 0xffffffff) {\n        if ((p_Var6->_flags & 0x20) == 0) {\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        if (p_Var6 == p_Var1) {\n          clearerr_unlocked(p_Var6);\n        }\n        else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }\n        *piVar5 = 0;\n        local_40 = local_40 + -1;\n        goto LAB_00011b37;\n      }\n    }\n    piVar16 = (int *)PTR_stdout_0001bfd4;\n    if (uVar10 == line_delim) {\n      piVar16 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n    }\n    else {\n      do {\n        p_Var6 = (_IO_FILE *)*piVar16;\n        pcVar7 = p_Var6->_IO_write_ptr;\n        if (pcVar7 < p_Var6->_IO_write_end) {\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }\n        else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }\n        p_Var6 = (_IO_FILE *)*piVar5;\n        pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n        if (pbVar15 < p_Var6->_IO_read_end) {\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }\n        else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }\n      } while (line_delim != uVar10);\n      if (local_48 != local_50) {\nLAB_00011ae1:\n        bVar20 = *local_4c;\n        if (bVar20 != 0) {\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }\n        local_4c = local_4c + 1;\n        bVar18 = true;\n        if ((byte *)delim_end == local_4c) goto LAB_00011b6f;\n        goto LAB_00011b06;\n      }\n    }\n    p_Var6 = (_IO_FILE *)*piVar16;\n    puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n    uVar8 = (uchar)uVar10;\n    if (puVar11 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n      p_Var6->_IO_write_ptr = (char *)(puVar11 + 1);\n      *puVar11 = uVar8;\n    }\n    else {\nLAB_00011c45:\n      iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n      if (iVar9 < 0) {\nLAB_00011ab9:\n                    /* WARNING: Subroutine does not return */\n        write_error();\n      }\n    }\n    bVar18 = true;\nLAB_00011b06:\n    pbVar15 = local_50 + 1;\n    piVar5 = piVar5 + 1;\n    bVar19 = local_50 < local_48;\n    local_50 = pbVar15;\n    if (bVar19 && local_40 != (byte *)0x0) {\n      p_Var6 = (_IO_FILE *)*piVar5;\n      if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n      piVar16 = local_44;\n      puVar2 = PTR_stdout_0001bfd4;\n      if (local_48 != local_50) {\n        if (*local_4c != 0) {\n          *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n          local_44 = (int *)((int)local_44 + 1);\n        }\n        local_4c = local_4c + 1;\n        if ((byte *)delim_end == local_4c) {\nLAB_00011b6f:\n          local_4c = (byte *)delims;\n        }\n        goto LAB_00011b06;\n      }\n      if (bVar18) {\n        pFVar3 = *(FILE **)PTR_stdout_0001bfd4;\n        if (local_44 != (int *)0x0) {\n          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);\n          if (piVar5 != piVar16) goto LAB_00011ab9;\n          pFVar3 = *(FILE **)puVar2;\n        }\n        uVar8 = line_delim;\n        puVar11 = (uchar *)pFVar3->_IO_write_ptr;\n        if (pFVar3->_IO_write_end <= puVar11) {\n          iVar9 = __overflow(pFVar3,(uint)line_delim);\n          if (-1 < iVar9) goto LAB_00011bf9;\n          goto LAB_00011ab9;\n        }\n        pFVar3->_IO_write_ptr = (char *)(puVar11 + 1);\n        *puVar11 = uVar8;\n      }\n    }\nLAB_00011bf9:\n    if (local_40 == (byte *)0x0) goto LAB_00011c05;\n    goto LAB_000119d5;\n  }\nLAB_00011e3f:\n                    /* WARNING: Subroutine does not return */\n  *(undefined **)(puVar13 + -4) = &UNK_00011e44;\n  xalloc_die();\n}" type_identifier (function_declarator "paste_parallel(size_t nfiles,char **fnamptr)" identifier (parameter_list "(size_t nfiles,char **fnamptr)" ( (parameter_declaration "size_t nfiles" primitive_type identifier) , (parameter_declaration "char **fnamptr" primitive_type (pointer_declarator "**fnamptr" * (pointer_declarator "*fnamptr" * identifier))) ))) (compound_statement "{\n  _IO_FILE *p_Var1;\n  undefined *puVar2;\n  size_t n;\n  FILE *pFVar3;\n  int *piVar4;\n  int *piVar5;\n  _IO_FILE *p_Var6;\n  char *pcVar7;\n  uchar uVar8;\n  int iVar9;\n  uint uVar10;\n  uchar *puVar11;\n  undefined1 *puVar12;\n  undefined1 *puVar13;\n  char **ppcVar14;\n  byte *pbVar15;\n  int *piVar16;\n  byte *pbVar17;\n  bool bVar18;\n  bool bVar19;\n  byte bVar20;\n  undefined1 auStack_5c [12];\n  byte *local_50;\n  byte *local_4c;\n  byte *local_48;\n  int *local_44;\n  byte *local_40;\n  uint local_3c;\n  void *local_38;\n  char local_31;\n  uint local_30;\n  int *local_2c;\n  int *local_28;\n  uint *local_24;\n  int *local_20;\n  undefined4 uStack_14;\n  \n  bVar20 = 0;\n  uStack_14 = 0x11879;\n  local_38 = xmalloc(nfiles + 2);\n  n = (nfiles + 1) * 4;\n  puVar13 = auStack_5c;\n  if ((-1 < (int)n) && (puVar13 = auStack_5c, nfiles + 1 >> 0x1e == 0)) {\n    local_2c = (int *)xmalloc(n);\n    puVar12 = auStack_5c;\n    bVar18 = false;\n    bVar19 = nfiles == 0;\n    if (bVar19) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return (_Bool)local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar5 = (int *)PTR_stdin_0001bfd0;\n    ppcVar14 = fnamptr;\n    do {\n      iVar9 = 2;\n      pbVar15 = (byte *)*ppcVar14;\n      pbVar17 = local_50;\n      do {\n        if (iVar9 == 0) break;\n        iVar9 = iVar9 + -1;\n        bVar18 = *pbVar15 < *pbVar17;\n        bVar19 = *pbVar15 == *pbVar17;\n        pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1;\n        pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1;\n      } while (bVar19);\n      if ((!bVar18 && !bVar19) == bVar18) {\n        have_read_stdin = true;\n        local_2c[(int)local_48] = *piVar5;\n      }\n      else {\n        local_44 = piVar5;\n        pFVar3 = fopen64(*ppcVar14,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar3;\n        if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;\n        iVar9 = fileno(pFVar3);\n        if (iVar9 == 0) {\n          local_31 = '\x01';\n        }\n        fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);\n        piVar5 = local_44;\n      }\n      local_48 = local_48 + 1;\n      ppcVar14 = ppcVar14 + 1;\n      bVar18 = nfiles < local_48;\n      bVar19 = (byte *)nfiles == local_48;\n    } while (!bVar19);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (have_read_stdin != false) {\n      dcgettext();\n      puVar12 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(char **)(puVar12 + -8) = *ppcVar14;\n      *(undefined4 *)(puVar12 + -0xc) = 3;\n      *(undefined4 *)(puVar12 + -0x10) = 0;\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e27;\n      pcVar7 = quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8));\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e2e;\n      piVar5 = __errno_location();\n      *(char **)(puVar12 + -0x14) = pcVar7;\n      *(char **)(puVar12 + -0x18) = "%s";\n      *(int *)(puVar12 + -0x1c) = *piVar5;\n      puVar13 = puVar12 + -0x20;\n      *(undefined4 *)(puVar12 + -0x20) = 1;\n      *(undefined4 *)(puVar12 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = (byte *)delims;\n    local_50 = (byte *)0x1;\n    bVar18 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar5 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar15 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n      uVar10 = (uint)*pbVar15;\n      if (local_44 != (int *)0x0) {\nLAB_00011a25:\n        piVar16 = local_44;\n        local_3c = uVar10;\n        piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n        if (piVar4 != piVar16) goto LAB_00011ab9;\n        local_44 = (int *)0x0;\n        uVar10 = local_3c;\n      }\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar10 = local_30;\n      if (local_30 != 0xffffffff && local_44 != (int *)0x0) goto LAB_00011a25;\n      if (local_30 == 0xffffffff) {\n        if ((p_Var6->_flags & 0x20) == 0) {\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        if (p_Var6 == p_Var1) {\n          clearerr_unlocked(p_Var6);\n        }\n        else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }\n        *piVar5 = 0;\n        local_40 = local_40 + -1;\n        goto LAB_00011b37;\n      }\n    }\n    piVar16 = (int *)PTR_stdout_0001bfd4;\n    if (uVar10 == line_delim) {\n      piVar16 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n    }\n    else {\n      do {\n        p_Var6 = (_IO_FILE *)*piVar16;\n        pcVar7 = p_Var6->_IO_write_ptr;\n        if (pcVar7 < p_Var6->_IO_write_end) {\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }\n        else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }\n        p_Var6 = (_IO_FILE *)*piVar5;\n        pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n        if (pbVar15 < p_Var6->_IO_read_end) {\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }\n        else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }\n      } while (line_delim != uVar10);\n      if (local_48 != local_50) {\nLAB_00011ae1:\n        bVar20 = *local_4c;\n        if (bVar20 != 0) {\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }\n        local_4c = local_4c + 1;\n        bVar18 = true;\n        if ((byte *)delim_end == local_4c) goto LAB_00011b6f;\n        goto LAB_00011b06;\n      }\n    }\n    p_Var6 = (_IO_FILE *)*piVar16;\n    puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n    uVar8 = (uchar)uVar10;\n    if (puVar11 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n      p_Var6->_IO_write_ptr = (char *)(puVar11 + 1);\n      *puVar11 = uVar8;\n    }\n    else {\nLAB_00011c45:\n      iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n      if (iVar9 < 0) {\nLAB_00011ab9:\n                    /* WARNING: Subroutine does not return */\n        write_error();\n      }\n    }\n    bVar18 = true;\nLAB_00011b06:\n    pbVar15 = local_50 + 1;\n    piVar5 = piVar5 + 1;\n    bVar19 = local_50 < local_48;\n    local_50 = pbVar15;\n    if (bVar19 && local_40 != (byte *)0x0) {\n      p_Var6 = (_IO_FILE *)*piVar5;\n      if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n      piVar16 = local_44;\n      puVar2 = PTR_stdout_0001bfd4;\n      if (local_48 != local_50) {\n        if (*local_4c != 0) {\n          *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n          local_44 = (int *)((int)local_44 + 1);\n        }\n        local_4c = local_4c + 1;\n        if ((byte *)delim_end == local_4c) {\nLAB_00011b6f:\n          local_4c = (byte *)delims;\n        }\n        goto LAB_00011b06;\n      }\n      if (bVar18) {\n        pFVar3 = *(FILE **)PTR_stdout_0001bfd4;\n        if (local_44 != (int *)0x0) {\n          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);\n          if (piVar5 != piVar16) goto LAB_00011ab9;\n          pFVar3 = *(FILE **)puVar2;\n        }\n        uVar8 = line_delim;\n        puVar11 = (uchar *)pFVar3->_IO_write_ptr;\n        if (pFVar3->_IO_write_end <= puVar11) {\n          iVar9 = __overflow(pFVar3,(uint)line_delim);\n          if (-1 < iVar9) goto LAB_00011bf9;\n          goto LAB_00011ab9;\n        }\n        pFVar3->_IO_write_ptr = (char *)(puVar11 + 1);\n        *puVar11 = uVar8;\n      }\n    }\nLAB_00011bf9:\n    if (local_40 == (byte *)0x0) goto LAB_00011c05;\n    goto LAB_000119d5;\n  }\nLAB_00011e3f:\n                    /* WARNING: Subroutine does not return */\n  *(undefined **)(puVar13 + -4) = &UNK_00011e44;\n  xalloc_die();\n}" { (declaration "_IO_FILE *p_Var1;" type_identifier (pointer_declarator "*p_Var1" * identifier) ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "size_t n;" primitive_type identifier ;) (declaration "FILE *pFVar3;" type_identifier (pointer_declarator "*pFVar3" * identifier) ;) (declaration "int *piVar4;" primitive_type (pointer_declarator "*piVar4" * identifier) ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "_IO_FILE *p_Var6;" type_identifier (pointer_declarator "*p_Var6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "uchar uVar8;" type_identifier identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "uchar *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined1 *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "undefined1 *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "char **ppcVar14;" primitive_type (pointer_declarator "**ppcVar14" * (pointer_declarator "*ppcVar14" * identifier)) ;) (declaration "byte *pbVar15;" type_identifier (pointer_declarator "*pbVar15" * identifier) ;) (declaration "int *piVar16;" primitive_type (pointer_declarator "*piVar16" * identifier) ;) (declaration "byte *pbVar17;" type_identifier (pointer_declarator "*pbVar17" * identifier) ;) (declaration "bool bVar18;" primitive_type identifier ;) (declaration "bool bVar19;" primitive_type identifier ;) (declaration "byte bVar20;" type_identifier identifier ;) (declaration "undefined1 auStack_5c [12];" type_identifier (array_declarator "auStack_5c [12]" identifier [ number_literal ]) ;) (declaration "byte *local_50;" type_identifier (pointer_declarator "*local_50" * identifier) ;) (declaration "byte *local_4c;" type_identifier (pointer_declarator "*local_4c" * identifier) ;) (declaration "byte *local_48;" type_identifier (pointer_declarator "*local_48" * identifier) ;) (declaration "int *local_44;" primitive_type (pointer_declarator "*local_44" * identifier) ;) (declaration "byte *local_40;" type_identifier (pointer_declarator "*local_40" * identifier) ;) (declaration "uint local_3c;" type_identifier identifier ;) (declaration "void *local_38;" primitive_type (pointer_declarator "*local_38" * identifier) ;) (declaration "char local_31;" primitive_type identifier ;) (declaration "uint local_30;" type_identifier identifier ;) (declaration "int *local_2c;" primitive_type (pointer_declarator "*local_2c" * identifier) ;) (declaration "int *local_28;" primitive_type (pointer_declarator "*local_28" * identifier) ;) (declaration "uint *local_24;" type_identifier (pointer_declarator "*local_24" * identifier) ;) (declaration "int *local_20;" primitive_type (pointer_declarator "*local_20" * identifier) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar20 = 0;" (assignment_expression "bVar20 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x11879;" (assignment_expression "uStack_14 = 0x11879" identifier = number_literal) ;) (expression_statement "local_38 = xmalloc(nfiles + 2);" (assignment_expression "local_38 = xmalloc(nfiles + 2)" identifier = (call_expression "xmalloc(nfiles + 2)" identifier (argument_list "(nfiles + 2)" ( (binary_expression "nfiles + 2" identifier + number_literal) )))) ;) (expression_statement "n = (nfiles + 1) * 4;" (assignment_expression "n = (nfiles + 1) * 4" identifier = (binary_expression "(nfiles + 1) * 4" (parenthesized_expression "(nfiles + 1)" ( (binary_expression "nfiles + 1" identifier + number_literal) )) * number_literal)) ;) (expression_statement "puVar13 = auStack_5c;" (assignment_expression "puVar13 = auStack_5c" identifier = identifier) ;) (if_statement "if ((-1 < (int)n) && (puVar13 = auStack_5c, nfiles + 1 >> 0x1e == 0)) {\n    local_2c = (int *)xmalloc(n);\n    puVar12 = auStack_5c;\n    bVar18 = false;\n    bVar19 = nfiles == 0;\n    if (bVar19) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return (_Bool)local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar5 = (int *)PTR_stdin_0001bfd0;\n    ppcVar14 = fnamptr;\n    do {\n      iVar9 = 2;\n      pbVar15 = (byte *)*ppcVar14;\n      pbVar17 = local_50;\n      do {\n        if (iVar9 == 0) break;\n        iVar9 = iVar9 + -1;\n        bVar18 = *pbVar15 < *pbVar17;\n        bVar19 = *pbVar15 == *pbVar17;\n        pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1;\n        pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1;\n      } while (bVar19);\n      if ((!bVar18 && !bVar19) == bVar18) {\n        have_read_stdin = true;\n        local_2c[(int)local_48] = *piVar5;\n      }\n      else {\n        local_44 = piVar5;\n        pFVar3 = fopen64(*ppcVar14,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar3;\n        if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;\n        iVar9 = fileno(pFVar3);\n        if (iVar9 == 0) {\n          local_31 = '\x01';\n        }\n        fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);\n        piVar5 = local_44;\n      }\n      local_48 = local_48 + 1;\n      ppcVar14 = ppcVar14 + 1;\n      bVar18 = nfiles < local_48;\n      bVar19 = (byte *)nfiles == local_48;\n    } while (!bVar19);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (have_read_stdin != false) {\n      dcgettext();\n      puVar12 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(char **)(puVar12 + -8) = *ppcVar14;\n      *(undefined4 *)(puVar12 + -0xc) = 3;\n      *(undefined4 *)(puVar12 + -0x10) = 0;\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e27;\n      pcVar7 = quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8));\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e2e;\n      piVar5 = __errno_location();\n      *(char **)(puVar12 + -0x14) = pcVar7;\n      *(char **)(puVar12 + -0x18) = "%s";\n      *(int *)(puVar12 + -0x1c) = *piVar5;\n      puVar13 = puVar12 + -0x20;\n      *(undefined4 *)(puVar12 + -0x20) = 1;\n      *(undefined4 *)(puVar12 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = (byte *)delims;\n    local_50 = (byte *)0x1;\n    bVar18 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar5 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar15 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n      uVar10 = (uint)*pbVar15;\n      if (local_44 != (int *)0x0) {\nLAB_00011a25:\n        piVar16 = local_44;\n        local_3c = uVar10;\n        piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n        if (piVar4 != piVar16) goto LAB_00011ab9;\n        local_44 = (int *)0x0;\n        uVar10 = local_3c;\n      }\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar10 = local_30;\n      if (local_30 != 0xffffffff && local_44 != (int *)0x0) goto LAB_00011a25;\n      if (local_30 == 0xffffffff) {\n        if ((p_Var6->_flags & 0x20) == 0) {\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        if (p_Var6 == p_Var1) {\n          clearerr_unlocked(p_Var6);\n        }\n        else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }\n        *piVar5 = 0;\n        local_40 = local_40 + -1;\n        goto LAB_00011b37;\n      }\n    }\n    piVar16 = (int *)PTR_stdout_0001bfd4;\n    if (uVar10 == line_delim) {\n      piVar16 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n    }\n    else {\n      do {\n        p_Var6 = (_IO_FILE *)*piVar16;\n        pcVar7 = p_Var6->_IO_write_ptr;\n        if (pcVar7 < p_Var6->_IO_write_end) {\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }\n        else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }\n        p_Var6 = (_IO_FILE *)*piVar5;\n        pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n        if (pbVar15 < p_Var6->_IO_read_end) {\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }\n        else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }\n      } while (line_delim != uVar10);\n      if (local_48 != local_50) {\nLAB_00011ae1:\n        bVar20 = *local_4c;\n        if (bVar20 != 0) {\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }\n        local_4c = local_4c + 1;\n        bVar18 = true;\n        if ((byte *)delim_end == local_4c) goto LAB_00011b6f;\n        goto LAB_00011b06;\n      }\n    }\n    p_Var6 = (_IO_FILE *)*piVar16;\n    puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n    uVar8 = (uchar)uVar10;\n    if (puVar11 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n      p_Var6->_IO_write_ptr = (char *)(puVar11 + 1);\n      *puVar11 = uVar8;\n    }\n    else {\nLAB_00011c45:\n      iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n      if (iVar9 < 0) {\nLAB_00011ab9:\n                    /* WARNING: Subroutine does not return */\n        write_error();\n      }\n    }\n    bVar18 = true;\nLAB_00011b06:\n    pbVar15 = local_50 + 1;\n    piVar5 = piVar5 + 1;\n    bVar19 = local_50 < local_48;\n    local_50 = pbVar15;\n    if (bVar19 && local_40 != (byte *)0x0) {\n      p_Var6 = (_IO_FILE *)*piVar5;\n      if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n      piVar16 = local_44;\n      puVar2 = PTR_stdout_0001bfd4;\n      if (local_48 != local_50) {\n        if (*local_4c != 0) {\n          *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n          local_44 = (int *)((int)local_44 + 1);\n        }\n        local_4c = local_4c + 1;\n        if ((byte *)delim_end == local_4c) {\nLAB_00011b6f:\n          local_4c = (byte *)delims;\n        }\n        goto LAB_00011b06;\n      }\n      if (bVar18) {\n        pFVar3 = *(FILE **)PTR_stdout_0001bfd4;\n        if (local_44 != (int *)0x0) {\n          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);\n          if (piVar5 != piVar16) goto LAB_00011ab9;\n          pFVar3 = *(FILE **)puVar2;\n        }\n        uVar8 = line_delim;\n        puVar11 = (uchar *)pFVar3->_IO_write_ptr;\n        if (pFVar3->_IO_write_end <= puVar11) {\n          iVar9 = __overflow(pFVar3,(uint)line_delim);\n          if (-1 < iVar9) goto LAB_00011bf9;\n          goto LAB_00011ab9;\n        }\n        pFVar3->_IO_write_ptr = (char *)(puVar11 + 1);\n        *puVar11 = uVar8;\n      }\n    }\nLAB_00011bf9:\n    if (local_40 == (byte *)0x0) goto LAB_00011c05;\n    goto LAB_000119d5;\n  }" if (parenthesized_expression "((-1 < (int)n) && (puVar13 = auStack_5c, nfiles + 1 >> 0x1e == 0))" ( (binary_expression "(-1 < (int)n) && (puVar13 = auStack_5c, nfiles + 1 >> 0x1e == 0)" (parenthesized_expression "(-1 < (int)n)" ( (binary_expression "-1 < (int)n" number_literal < (cast_expression "(int)n" ( (type_descriptor "int" primitive_type) ) identifier)) )) && (parenthesized_expression "(puVar13 = auStack_5c, nfiles + 1 >> 0x1e == 0)" ( (comma_expression "puVar13 = auStack_5c, nfiles + 1 >> 0x1e == 0" (assignment_expression "puVar13 = auStack_5c" identifier = identifier) , (binary_expression "nfiles + 1 >> 0x1e == 0" (binary_expression "nfiles + 1 >> 0x1e" (binary_expression "nfiles + 1" identifier + number_literal) >> number_literal) == number_literal)) ))) )) (compound_statement "{\n    local_2c = (int *)xmalloc(n);\n    puVar12 = auStack_5c;\n    bVar18 = false;\n    bVar19 = nfiles == 0;\n    if (bVar19) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return (_Bool)local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar5 = (int *)PTR_stdin_0001bfd0;\n    ppcVar14 = fnamptr;\n    do {\n      iVar9 = 2;\n      pbVar15 = (byte *)*ppcVar14;\n      pbVar17 = local_50;\n      do {\n        if (iVar9 == 0) break;\n        iVar9 = iVar9 + -1;\n        bVar18 = *pbVar15 < *pbVar17;\n        bVar19 = *pbVar15 == *pbVar17;\n        pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1;\n        pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1;\n      } while (bVar19);\n      if ((!bVar18 && !bVar19) == bVar18) {\n        have_read_stdin = true;\n        local_2c[(int)local_48] = *piVar5;\n      }\n      else {\n        local_44 = piVar5;\n        pFVar3 = fopen64(*ppcVar14,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar3;\n        if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;\n        iVar9 = fileno(pFVar3);\n        if (iVar9 == 0) {\n          local_31 = '\x01';\n        }\n        fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);\n        piVar5 = local_44;\n      }\n      local_48 = local_48 + 1;\n      ppcVar14 = ppcVar14 + 1;\n      bVar18 = nfiles < local_48;\n      bVar19 = (byte *)nfiles == local_48;\n    } while (!bVar19);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (have_read_stdin != false) {\n      dcgettext();\n      puVar12 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(char **)(puVar12 + -8) = *ppcVar14;\n      *(undefined4 *)(puVar12 + -0xc) = 3;\n      *(undefined4 *)(puVar12 + -0x10) = 0;\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e27;\n      pcVar7 = quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8));\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e2e;\n      piVar5 = __errno_location();\n      *(char **)(puVar12 + -0x14) = pcVar7;\n      *(char **)(puVar12 + -0x18) = "%s";\n      *(int *)(puVar12 + -0x1c) = *piVar5;\n      puVar13 = puVar12 + -0x20;\n      *(undefined4 *)(puVar12 + -0x20) = 1;\n      *(undefined4 *)(puVar12 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = (byte *)delims;\n    local_50 = (byte *)0x1;\n    bVar18 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar5 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar15 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n      uVar10 = (uint)*pbVar15;\n      if (local_44 != (int *)0x0) {\nLAB_00011a25:\n        piVar16 = local_44;\n        local_3c = uVar10;\n        piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n        if (piVar4 != piVar16) goto LAB_00011ab9;\n        local_44 = (int *)0x0;\n        uVar10 = local_3c;\n      }\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar10 = local_30;\n      if (local_30 != 0xffffffff && local_44 != (int *)0x0) goto LAB_00011a25;\n      if (local_30 == 0xffffffff) {\n        if ((p_Var6->_flags & 0x20) == 0) {\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        if (p_Var6 == p_Var1) {\n          clearerr_unlocked(p_Var6);\n        }\n        else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }\n        *piVar5 = 0;\n        local_40 = local_40 + -1;\n        goto LAB_00011b37;\n      }\n    }\n    piVar16 = (int *)PTR_stdout_0001bfd4;\n    if (uVar10 == line_delim) {\n      piVar16 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n    }\n    else {\n      do {\n        p_Var6 = (_IO_FILE *)*piVar16;\n        pcVar7 = p_Var6->_IO_write_ptr;\n        if (pcVar7 < p_Var6->_IO_write_end) {\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }\n        else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }\n        p_Var6 = (_IO_FILE *)*piVar5;\n        pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n        if (pbVar15 < p_Var6->_IO_read_end) {\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }\n        else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }\n      } while (line_delim != uVar10);\n      if (local_48 != local_50) {\nLAB_00011ae1:\n        bVar20 = *local_4c;\n        if (bVar20 != 0) {\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }\n        local_4c = local_4c + 1;\n        bVar18 = true;\n        if ((byte *)delim_end == local_4c) goto LAB_00011b6f;\n        goto LAB_00011b06;\n      }\n    }\n    p_Var6 = (_IO_FILE *)*piVar16;\n    puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n    uVar8 = (uchar)uVar10;\n    if (puVar11 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n      p_Var6->_IO_write_ptr = (char *)(puVar11 + 1);\n      *puVar11 = uVar8;\n    }\n    else {\nLAB_00011c45:\n      iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n      if (iVar9 < 0) {\nLAB_00011ab9:\n                    /* WARNING: Subroutine does not return */\n        write_error();\n      }\n    }\n    bVar18 = true;\nLAB_00011b06:\n    pbVar15 = local_50 + 1;\n    piVar5 = piVar5 + 1;\n    bVar19 = local_50 < local_48;\n    local_50 = pbVar15;\n    if (bVar19 && local_40 != (byte *)0x0) {\n      p_Var6 = (_IO_FILE *)*piVar5;\n      if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n      piVar16 = local_44;\n      puVar2 = PTR_stdout_0001bfd4;\n      if (local_48 != local_50) {\n        if (*local_4c != 0) {\n          *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n          local_44 = (int *)((int)local_44 + 1);\n        }\n        local_4c = local_4c + 1;\n        if ((byte *)delim_end == local_4c) {\nLAB_00011b6f:\n          local_4c = (byte *)delims;\n        }\n        goto LAB_00011b06;\n      }\n      if (bVar18) {\n        pFVar3 = *(FILE **)PTR_stdout_0001bfd4;\n        if (local_44 != (int *)0x0) {\n          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);\n          if (piVar5 != piVar16) goto LAB_00011ab9;\n          pFVar3 = *(FILE **)puVar2;\n        }\n        uVar8 = line_delim;\n        puVar11 = (uchar *)pFVar3->_IO_write_ptr;\n        if (pFVar3->_IO_write_end <= puVar11) {\n          iVar9 = __overflow(pFVar3,(uint)line_delim);\n          if (-1 < iVar9) goto LAB_00011bf9;\n          goto LAB_00011ab9;\n        }\n        pFVar3->_IO_write_ptr = (char *)(puVar11 + 1);\n        *puVar11 = uVar8;\n      }\n    }\nLAB_00011bf9:\n    if (local_40 == (byte *)0x0) goto LAB_00011c05;\n    goto LAB_000119d5;\n  }" { (expression_statement "local_2c = (int *)xmalloc(n);" (assignment_expression "local_2c = (int *)xmalloc(n)" identifier = (cast_expression "(int *)xmalloc(n)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(n)" identifier (argument_list "(n)" ( identifier ))))) ;) (expression_statement "puVar12 = auStack_5c;" (assignment_expression "puVar12 = auStack_5c" identifier = identifier) ;) (expression_statement "bVar18 = false;" (assignment_expression "bVar18 = false" identifier = false) ;) (expression_statement "bVar19 = nfiles == 0;" (assignment_expression "bVar19 = nfiles == 0" identifier = (binary_expression "nfiles == 0" identifier == number_literal)) ;) (if_statement "if (bVar19) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return (_Bool)local_31;\n    }" if (parenthesized_expression "(bVar19)" ( identifier )) (compound_statement "{\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return (_Bool)local_31;\n    }" { (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (labeled_statement "LAB_00011c05:\n      free(local_2c);" statement_identifier : (expression_statement "free(local_2c);" (call_expression "free(local_2c)" identifier (argument_list "(local_2c)" ( identifier ))) ;)) (expression_statement "free(local_38);" (call_expression "free(local_38)" identifier (argument_list "(local_38)" ( identifier ))) ;) (return_statement "return (_Bool)local_31;" return (cast_expression "(_Bool)local_31" ( (type_descriptor "_Bool" type_identifier) ) identifier) ;) })) (expression_statement "local_50 = &DAT_000180ad;" (assignment_expression "local_50 = &DAT_000180ad" identifier = (pointer_expression "&DAT_000180ad" & identifier)) ;) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_4c = (byte *)0x17012;" (assignment_expression "local_4c = (byte *)0x17012" identifier = (cast_expression "(byte *)0x17012" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_48 = (byte *)0x0;" (assignment_expression "local_48 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "piVar5 = (int *)PTR_stdin_0001bfd0;" (assignment_expression "piVar5 = (int *)PTR_stdin_0001bfd0" identifier = (cast_expression "(int *)PTR_stdin_0001bfd0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "ppcVar14 = fnamptr;" (assignment_expression "ppcVar14 = fnamptr" identifier = identifier) ;) (do_statement "do {\n      iVar9 = 2;\n      pbVar15 = (byte *)*ppcVar14;\n      pbVar17 = local_50;\n      do {\n        if (iVar9 == 0) break;\n        iVar9 = iVar9 + -1;\n        bVar18 = *pbVar15 < *pbVar17;\n        bVar19 = *pbVar15 == *pbVar17;\n        pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1;\n        pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1;\n      } while (bVar19);\n      if ((!bVar18 && !bVar19) == bVar18) {\n        have_read_stdin = true;\n        local_2c[(int)local_48] = *piVar5;\n      }\n      else {\n        local_44 = piVar5;\n        pFVar3 = fopen64(*ppcVar14,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar3;\n        if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;\n        iVar9 = fileno(pFVar3);\n        if (iVar9 == 0) {\n          local_31 = '\x01';\n        }\n        fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);\n        piVar5 = local_44;\n      }\n      local_48 = local_48 + 1;\n      ppcVar14 = ppcVar14 + 1;\n      bVar18 = nfiles < local_48;\n      bVar19 = (byte *)nfiles == local_48;\n    } while (!bVar19);" do (compound_statement "{\n      iVar9 = 2;\n      pbVar15 = (byte *)*ppcVar14;\n      pbVar17 = local_50;\n      do {\n        if (iVar9 == 0) break;\n        iVar9 = iVar9 + -1;\n        bVar18 = *pbVar15 < *pbVar17;\n        bVar19 = *pbVar15 == *pbVar17;\n        pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1;\n        pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1;\n      } while (bVar19);\n      if ((!bVar18 && !bVar19) == bVar18) {\n        have_read_stdin = true;\n        local_2c[(int)local_48] = *piVar5;\n      }\n      else {\n        local_44 = piVar5;\n        pFVar3 = fopen64(*ppcVar14,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar3;\n        if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;\n        iVar9 = fileno(pFVar3);\n        if (iVar9 == 0) {\n          local_31 = '\x01';\n        }\n        fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);\n        piVar5 = local_44;\n      }\n      local_48 = local_48 + 1;\n      ppcVar14 = ppcVar14 + 1;\n      bVar18 = nfiles < local_48;\n      bVar19 = (byte *)nfiles == local_48;\n    }" { (expression_statement "iVar9 = 2;" (assignment_expression "iVar9 = 2" identifier = number_literal) ;) (expression_statement "pbVar15 = (byte *)*ppcVar14;" (assignment_expression "pbVar15 = (byte *)*ppcVar14" identifier = (cast_expression "(byte *)*ppcVar14" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*ppcVar14" * identifier))) ;) (expression_statement "pbVar17 = local_50;" (assignment_expression "pbVar17 = local_50" identifier = identifier) ;) (do_statement "do {\n        if (iVar9 == 0) break;\n        iVar9 = iVar9 + -1;\n        bVar18 = *pbVar15 < *pbVar17;\n        bVar19 = *pbVar15 == *pbVar17;\n        pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1;\n        pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1;\n      } while (bVar19);" do (compound_statement "{\n        if (iVar9 == 0) break;\n        iVar9 = iVar9 + -1;\n        bVar18 = *pbVar15 < *pbVar17;\n        bVar19 = *pbVar15 == *pbVar17;\n        pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1;\n        pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1;\n      }" { (if_statement "if (iVar9 == 0) break;" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar9 = iVar9 + -1;" (assignment_expression "iVar9 = iVar9 + -1" identifier = (binary_expression "iVar9 + -1" identifier + number_literal)) ;) (expression_statement "bVar18 = *pbVar15 < *pbVar17;" (assignment_expression "bVar18 = *pbVar15 < *pbVar17" identifier = (binary_expression "*pbVar15 < *pbVar17" (pointer_expression "*pbVar15" * identifier) < (pointer_expression "*pbVar17" * identifier))) ;) (expression_statement "bVar19 = *pbVar15 == *pbVar17;" (assignment_expression "bVar19 = *pbVar15 == *pbVar17" identifier = (binary_expression "*pbVar15 == *pbVar17" (pointer_expression "*pbVar15" * identifier) == (pointer_expression "*pbVar17" * identifier))) ;) (expression_statement "pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1;" (assignment_expression "pbVar15 = pbVar15 + (uint)bVar20 * -2 + 1" identifier = (binary_expression "pbVar15 + (uint)bVar20 * -2 + 1" (binary_expression "pbVar15 + (uint)bVar20 * -2" identifier + (binary_expression "(uint)bVar20 * -2" (cast_expression "(uint)bVar20" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1;" (assignment_expression "pbVar17 = pbVar17 + (uint)bVar20 * -2 + 1" identifier = (binary_expression "pbVar17 + (uint)bVar20 * -2 + 1" (binary_expression "pbVar17 + (uint)bVar20 * -2" identifier + (binary_expression "(uint)bVar20 * -2" (cast_expression "(uint)bVar20" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar19)" ( identifier )) ;) (if_statement "if ((!bVar18 && !bVar19) == bVar18) {\n        have_read_stdin = true;\n        local_2c[(int)local_48] = *piVar5;\n      }\n      else {\n        local_44 = piVar5;\n        pFVar3 = fopen64(*ppcVar14,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar3;\n        if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;\n        iVar9 = fileno(pFVar3);\n        if (iVar9 == 0) {\n          local_31 = '\x01';\n        }\n        fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);\n        piVar5 = local_44;\n      }" if (parenthesized_expression "((!bVar18 && !bVar19) == bVar18)" ( (binary_expression "(!bVar18 && !bVar19) == bVar18" (parenthesized_expression "(!bVar18 && !bVar19)" ( (binary_expression "!bVar18 && !bVar19" (unary_expression "!bVar18" ! identifier) && (unary_expression "!bVar19" ! identifier)) )) == identifier) )) (compound_statement "{\n        have_read_stdin = true;\n        local_2c[(int)local_48] = *piVar5;\n      }" { (expression_statement "have_read_stdin = true;" (assignment_expression "have_read_stdin = true" identifier = true) ;) (expression_statement "local_2c[(int)local_48] = *piVar5;" (assignment_expression "local_2c[(int)local_48] = *piVar5" (subscript_expression "local_2c[(int)local_48]" identifier [ (cast_expression "(int)local_48" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (pointer_expression "*piVar5" * identifier)) ;) }) (else_clause "else {\n        local_44 = piVar5;\n        pFVar3 = fopen64(*ppcVar14,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar3;\n        if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;\n        iVar9 = fileno(pFVar3);\n        if (iVar9 == 0) {\n          local_31 = '\x01';\n        }\n        fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);\n        piVar5 = local_44;\n      }" else (compound_statement "{\n        local_44 = piVar5;\n        pFVar3 = fopen64(*ppcVar14,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar3;\n        if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;\n        iVar9 = fileno(pFVar3);\n        if (iVar9 == 0) {\n          local_31 = '\x01';\n        }\n        fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);\n        piVar5 = local_44;\n      }" { (expression_statement "local_44 = piVar5;" (assignment_expression "local_44 = piVar5" identifier = identifier) ;) (expression_statement "pFVar3 = fopen64(*ppcVar14,(char *)local_4c);" (assignment_expression "pFVar3 = fopen64(*ppcVar14,(char *)local_4c)" identifier = (call_expression "fopen64(*ppcVar14,(char *)local_4c)" identifier (argument_list "(*ppcVar14,(char *)local_4c)" ( (pointer_expression "*ppcVar14" * identifier) , (cast_expression "(char *)local_4c" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "local_2c[(int)local_48] = (int)pFVar3;" (assignment_expression "local_2c[(int)local_48] = (int)pFVar3" (subscript_expression "local_2c[(int)local_48]" identifier [ (cast_expression "(int)local_48" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(int)pFVar3" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (pFVar3 == (FILE *)0x0) goto LAB_00011e18;" if (parenthesized_expression "(pFVar3 == (FILE *)0x0)" ( (binary_expression "pFVar3 == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011e18;" goto statement_identifier ;)) (expression_statement "iVar9 = fileno(pFVar3);" (assignment_expression "iVar9 = fileno(pFVar3)" identifier = (call_expression "fileno(pFVar3)" identifier (argument_list "(pFVar3)" ( identifier )))) ;) (if_statement "if (iVar9 == 0) {\n          local_31 = '\x01';\n        }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n          local_31 = '\x01';\n        }" { (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) })) (expression_statement "fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL);" (call_expression "fadvise((FILE *)pFVar3,FADVISE_SEQUENTIAL)" identifier (argument_list "((FILE *)pFVar3,FADVISE_SEQUENTIAL)" ( (cast_expression "(FILE *)pFVar3" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier ))) ;) (expression_statement "piVar5 = local_44;" (assignment_expression "piVar5 = local_44" identifier = identifier) ;) }))) (expression_statement "local_48 = local_48 + 1;" (assignment_expression "local_48 = local_48 + 1" identifier = (binary_expression "local_48 + 1" identifier + number_literal)) ;) (expression_statement "ppcVar14 = ppcVar14 + 1;" (assignment_expression "ppcVar14 = ppcVar14 + 1" identifier = (binary_expression "ppcVar14 + 1" identifier + number_literal)) ;) (expression_statement "bVar18 = nfiles < local_48;" (assignment_expression "bVar18 = nfiles < local_48" identifier = (binary_expression "nfiles < local_48" identifier < identifier)) ;) (expression_statement "bVar19 = (byte *)nfiles == local_48;" (assignment_expression "bVar19 = (byte *)nfiles == local_48" identifier = (binary_expression "(byte *)nfiles == local_48" (cast_expression "(byte *)nfiles" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == identifier)) ;) }) while (parenthesized_expression "(!bVar19)" ( (unary_expression "!bVar19" ! identifier) )) ;) (if_statement "if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (have_read_stdin != false) {\n      dcgettext();\n      puVar12 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(char **)(puVar12 + -8) = *ppcVar14;\n      *(undefined4 *)(puVar12 + -0xc) = 3;\n      *(undefined4 *)(puVar12 + -0x10) = 0;\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e27;\n      pcVar7 = quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8));\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e2e;\n      piVar5 = __errno_location();\n      *(char **)(puVar12 + -0x14) = pcVar7;\n      *(char **)(puVar12 + -0x18) = "%s";\n      *(int *)(puVar12 + -0x1c) = *piVar5;\n      puVar13 = puVar12 + -0x20;\n      *(undefined4 *)(puVar12 + -0x20) = 1;\n      *(undefined4 *)(puVar12 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" if (parenthesized_expression "(local_31 == '\0')" ( (binary_expression "local_31 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_31 = '\x01';\n    }" { (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }) (else_clause "else if (have_read_stdin != false) {\n      dcgettext();\n      puVar12 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(char **)(puVar12 + -8) = *ppcVar14;\n      *(undefined4 *)(puVar12 + -0xc) = 3;\n      *(undefined4 *)(puVar12 + -0x10) = 0;\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e27;\n      pcVar7 = quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8));\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e2e;\n      piVar5 = __errno_location();\n      *(char **)(puVar12 + -0x14) = pcVar7;\n      *(char **)(puVar12 + -0x18) = "%s";\n      *(int *)(puVar12 + -0x1c) = *piVar5;\n      puVar13 = puVar12 + -0x20;\n      *(undefined4 *)(puVar12 + -0x20) = 1;\n      *(undefined4 *)(puVar12 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" else (if_statement "if (have_read_stdin != false) {\n      dcgettext();\n      puVar12 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(char **)(puVar12 + -8) = *ppcVar14;\n      *(undefined4 *)(puVar12 + -0xc) = 3;\n      *(undefined4 *)(puVar12 + -0x10) = 0;\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e27;\n      pcVar7 = quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8));\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e2e;\n      piVar5 = __errno_location();\n      *(char **)(puVar12 + -0x14) = pcVar7;\n      *(char **)(puVar12 + -0x18) = "%s";\n      *(int *)(puVar12 + -0x1c) = *piVar5;\n      puVar13 = puVar12 + -0x20;\n      *(undefined4 *)(puVar12 + -0x20) = 1;\n      *(undefined4 *)(puVar12 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" if (parenthesized_expression "(have_read_stdin != false)" ( (binary_expression "have_read_stdin != false" identifier != false) )) (compound_statement "{\n      dcgettext();\n      puVar12 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(char **)(puVar12 + -8) = *ppcVar14;\n      *(undefined4 *)(puVar12 + -0xc) = 3;\n      *(undefined4 *)(puVar12 + -0x10) = 0;\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e27;\n      pcVar7 = quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8));\n      *(undefined4 *)(puVar12 + -0x14) = 0x11e2e;\n      piVar5 = __errno_location();\n      *(char **)(puVar12 + -0x14) = pcVar7;\n      *(char **)(puVar12 + -0x18) = "%s";\n      *(int *)(puVar12 + -0x1c) = *piVar5;\n      puVar13 = puVar12 + -0x20;\n      *(undefined4 *)(puVar12 + -0x20) = 1;\n      *(undefined4 *)(puVar12 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar12 = &stack0xffffff94;" (assignment_expression "puVar12 = &stack0xffffff94" identifier = (pointer_expression "&stack0xffffff94" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_00011e18:\n      *(char **)(puVar12 + -8) = *ppcVar14;" statement_identifier : (expression_statement "*(char **)(puVar12 + -8) = *ppcVar14;" (assignment_expression "*(char **)(puVar12 + -8) = *ppcVar14" (pointer_expression "*(char **)(puVar12 + -8)" * (cast_expression "(char **)(puVar12 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar12 + -8)" ( (binary_expression "puVar12 + -8" identifier + number_literal) )))) = (pointer_expression "*ppcVar14" * identifier)) ;)) (expression_statement "*(undefined4 *)(puVar12 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar12 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar12 + -0xc)" * (cast_expression "(undefined4 *)(puVar12 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0xc)" ( (binary_expression "puVar12 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar12 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar12 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar12 + -0x10)" * (cast_expression "(undefined4 *)(puVar12 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0x10)" ( (binary_expression "puVar12 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar12 + -0x14) = 0x11e27;" (assignment_expression "*(undefined4 *)(puVar12 + -0x14) = 0x11e27" (pointer_expression "*(undefined4 *)(puVar12 + -0x14)" * (cast_expression "(undefined4 *)(puVar12 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0x14)" ( (binary_expression "puVar12 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "pcVar7 = quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8));" (assignment_expression "pcVar7 = quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8))" identifier = (call_expression "quotearg_n_style_colon\n                         (*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8))" identifier (argument_list "(*(int *)(puVar12 + -0x10),*(quoting_style *)(puVar12 + -0xc),\n                          *(char **)(puVar12 + -8))" ( (pointer_expression "*(int *)(puVar12 + -0x10)" * (cast_expression "(int *)(puVar12 + -0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0x10)" ( (binary_expression "puVar12 + -0x10" identifier + number_literal) )))) , (pointer_expression "*(quoting_style *)(puVar12 + -0xc)" * (cast_expression "(quoting_style *)(puVar12 + -0xc)" ( (type_descriptor "quoting_style *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0xc)" ( (binary_expression "puVar12 + -0xc" identifier + number_literal) )))) , (pointer_expression "*(char **)(puVar12 + -8)" * (cast_expression "(char **)(puVar12 + -8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar12 + -8)" ( (binary_expression "puVar12 + -8" identifier + number_literal) )))) )))) ;) (expression_statement "*(undefined4 *)(puVar12 + -0x14) = 0x11e2e;" (assignment_expression "*(undefined4 *)(puVar12 + -0x14) = 0x11e2e" (pointer_expression "*(undefined4 *)(puVar12 + -0x14)" * (cast_expression "(undefined4 *)(puVar12 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0x14)" ( (binary_expression "puVar12 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar5 = __errno_location();" (assignment_expression "piVar5 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(char **)(puVar12 + -0x14) = pcVar7;" (assignment_expression "*(char **)(puVar12 + -0x14) = pcVar7" (pointer_expression "*(char **)(puVar12 + -0x14)" * (cast_expression "(char **)(puVar12 + -0x14)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar12 + -0x14)" ( (binary_expression "puVar12 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar12 + -0x18) = "%s";" (assignment_expression "*(char **)(puVar12 + -0x18) = "%s"" (pointer_expression "*(char **)(puVar12 + -0x18)" * (cast_expression "(char **)(puVar12 + -0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar12 + -0x18)" ( (binary_expression "puVar12 + -0x18" identifier + number_literal) )))) = (string_literal ""%s"" " string_content ")) ;) (expression_statement "*(int *)(puVar12 + -0x1c) = *piVar5;" (assignment_expression "*(int *)(puVar12 + -0x1c) = *piVar5" (pointer_expression "*(int *)(puVar12 + -0x1c)" * (cast_expression "(int *)(puVar12 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0x1c)" ( (binary_expression "puVar12 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar5" * identifier)) ;) (expression_statement "puVar13 = puVar12 + -0x20;" (assignment_expression "puVar13 = puVar12 + -0x20" identifier = (binary_expression "puVar12 + -0x20" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar12 + -0x20) = 1;" (assignment_expression "*(undefined4 *)(puVar12 + -0x20) = 1" (pointer_expression "*(undefined4 *)(puVar12 + -0x20)" * (cast_expression "(undefined4 *)(puVar12 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0x20)" ( (binary_expression "puVar12 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar12 + -0x24) = 0x11e3f;" (assignment_expression "*(undefined4 *)(puVar12 + -0x24) = 0x11e3f" (pointer_expression "*(undefined4 *)(puVar12 + -0x24)" * (cast_expression "(undefined4 *)(puVar12 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0x24)" ( (binary_expression "puVar12 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_00011e3f;" goto statement_identifier ;) })))) (expression_statement "local_28 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "local_28 = (int *)PTR_stdout_0001bfd4" identifier = (cast_expression "(int *)PTR_stdout_0001bfd4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_40 = local_48;" (assignment_expression "local_40 = local_48" identifier = identifier) ;) (expression_statement "local_20 = local_28;" (assignment_expression "local_20 = local_28" identifier = identifier) ;) (labeled_statement "LAB_000119d5:\n    local_4c = (byte *)delims;" statement_identifier : (expression_statement "local_4c = (byte *)delims;" (assignment_expression "local_4c = (byte *)delims" identifier = (cast_expression "(byte *)delims" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (expression_statement "local_50 = (byte *)0x1;" (assignment_expression "local_50 = (byte *)0x1" identifier = (cast_expression "(byte *)0x1" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar18 = false;" (assignment_expression "bVar18 = false" identifier = false) ;) (expression_statement "local_44 = (int *)0x0;" (assignment_expression "local_44 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var6 = (_IO_FILE *)*local_2c;" (assignment_expression "p_Var6 = (_IO_FILE *)*local_2c" identifier = (cast_expression "(_IO_FILE *)*local_2c" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_2c" * identifier))) ;) (expression_statement "piVar5 = local_2c;" (assignment_expression "piVar5 = local_2c" identifier = identifier) ;) (if_statement "if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;" if (parenthesized_expression "(p_Var6 == (_IO_FILE *)0x0)" ( (binary_expression "p_Var6 == (_IO_FILE *)0x0" identifier == (cast_expression "(_IO_FILE *)0x0" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011b37;" goto statement_identifier ;)) (labeled_statement "LAB_00011a08:\n    pbVar15 = (byte *)p_Var6->_IO_read_ptr;" statement_identifier : (expression_statement "pbVar15 = (byte *)p_Var6->_IO_read_ptr;" (assignment_expression "pbVar15 = (byte *)p_Var6->_IO_read_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_read_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier))) ;)) (if_statement "if (pbVar15 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n      uVar10 = (uint)*pbVar15;\n      if (local_44 != (int *)0x0) {\nLAB_00011a25:\n        piVar16 = local_44;\n        local_3c = uVar10;\n        piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n        if (piVar4 != piVar16) goto LAB_00011ab9;\n        local_44 = (int *)0x0;\n        uVar10 = local_3c;\n      }\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar10 = local_30;\n      if (local_30 != 0xffffffff && local_44 != (int *)0x0) goto LAB_00011a25;\n      if (local_30 == 0xffffffff) {\n        if ((p_Var6->_flags & 0x20) == 0) {\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        if (p_Var6 == p_Var1) {\n          clearerr_unlocked(p_Var6);\n        }\n        else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }\n        *piVar5 = 0;\n        local_40 = local_40 + -1;\n        goto LAB_00011b37;\n      }\n    }" if (parenthesized_expression "(pbVar15 < p_Var6->_IO_read_end)" ( (binary_expression "pbVar15 < p_Var6->_IO_read_end" identifier < (field_expression "p_Var6->_IO_read_end" identifier -> field_identifier)) )) (compound_statement "{\n      p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n      uVar10 = (uint)*pbVar15;\n      if (local_44 != (int *)0x0) {\nLAB_00011a25:\n        piVar16 = local_44;\n        local_3c = uVar10;\n        piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n        if (piVar4 != piVar16) goto LAB_00011ab9;\n        local_44 = (int *)0x0;\n        uVar10 = local_3c;\n      }\n    }" { (expression_statement "p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);" (assignment_expression "p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1)" (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar15 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar15 + 1)" ( (binary_expression "pbVar15 + 1" identifier + number_literal) )))) ;) (expression_statement "uVar10 = (uint)*pbVar15;" (assignment_expression "uVar10 = (uint)*pbVar15" identifier = (binary_expression "(uint)*pbVar15" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (if_statement "if (local_44 != (int *)0x0) {\nLAB_00011a25:\n        piVar16 = local_44;\n        local_3c = uVar10;\n        piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n        if (piVar4 != piVar16) goto LAB_00011ab9;\n        local_44 = (int *)0x0;\n        uVar10 = local_3c;\n      }" if (parenthesized_expression "(local_44 != (int *)0x0)" ( (binary_expression "local_44 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\nLAB_00011a25:\n        piVar16 = local_44;\n        local_3c = uVar10;\n        piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n        if (piVar4 != piVar16) goto LAB_00011ab9;\n        local_44 = (int *)0x0;\n        uVar10 = local_3c;\n      }" { (labeled_statement "LAB_00011a25:\n        piVar16 = local_44;" statement_identifier : (expression_statement "piVar16 = local_44;" (assignment_expression "piVar16 = local_44" identifier = identifier) ;)) (expression_statement "local_3c = uVar10;" (assignment_expression "local_3c = uVar10" identifier = identifier) ;) (expression_statement "piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);" (assignment_expression "piVar4 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" identifier = (cast_expression "(int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" identifier (argument_list "(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" ( identifier , number_literal , (cast_expression "(size_t)local_44" ( (type_descriptor "size_t" primitive_type) ) identifier) , (pointer_expression "*(FILE **)PTR_stdout_0001bfd4" * (cast_expression "(FILE **)PTR_stdout_0001bfd4" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))))) ;) (if_statement "if (piVar4 != piVar16) goto LAB_00011ab9;" if (parenthesized_expression "(piVar4 != piVar16)" ( (binary_expression "piVar4 != piVar16" identifier != identifier) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) (expression_statement "local_44 = (int *)0x0;" (assignment_expression "local_44 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar10 = local_3c;" (assignment_expression "uVar10 = local_3c" identifier = identifier) ;) })) }) (else_clause "else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar10 = local_30;\n      if (local_30 != 0xffffffff && local_44 != (int *)0x0) goto LAB_00011a25;\n      if (local_30 == 0xffffffff) {\n        if ((p_Var6->_flags & 0x20) == 0) {\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        if (p_Var6 == p_Var1) {\n          clearerr_unlocked(p_Var6);\n        }\n        else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }\n        *piVar5 = 0;\n        local_40 = local_40 + -1;\n        goto LAB_00011b37;\n      }\n    }" else (compound_statement "{\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar10 = local_30;\n      if (local_30 != 0xffffffff && local_44 != (int *)0x0) goto LAB_00011a25;\n      if (local_30 == 0xffffffff) {\n        if ((p_Var6->_flags & 0x20) == 0) {\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        if (p_Var6 == p_Var1) {\n          clearerr_unlocked(p_Var6);\n        }\n        else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }\n        *piVar5 = 0;\n        local_40 = local_40 + -1;\n        goto LAB_00011b37;\n      }\n    }" { (expression_statement "local_30 = __uflow(p_Var6);" (assignment_expression "local_30 = __uflow(p_Var6)" identifier = (call_expression "__uflow(p_Var6)" identifier (argument_list "(p_Var6)" ( identifier )))) ;) (expression_statement "local_24 = (uint *)__errno_location();" (assignment_expression "local_24 = (uint *)__errno_location()" identifier = (cast_expression "(uint *)__errno_location()" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "__errno_location()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_3c = *local_24;" (assignment_expression "local_3c = *local_24" identifier = (pointer_expression "*local_24" * identifier)) ;) (expression_statement "uVar10 = local_30;" (assignment_expression "uVar10 = local_30" identifier = identifier) ;) (if_statement "if (local_30 != 0xffffffff && local_44 != (int *)0x0) goto LAB_00011a25;" if (parenthesized_expression "(local_30 != 0xffffffff && local_44 != (int *)0x0)" ( (binary_expression "local_30 != 0xffffffff && local_44 != (int *)0x0" (binary_expression "local_30 != 0xffffffff" identifier != number_literal) && (binary_expression "local_44 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) )) (goto_statement "goto LAB_00011a25;" goto statement_identifier ;)) (if_statement "if (local_30 == 0xffffffff) {\n        if ((p_Var6->_flags & 0x20) == 0) {\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        if (p_Var6 == p_Var1) {\n          clearerr_unlocked(p_Var6);\n        }\n        else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }\n        *piVar5 = 0;\n        local_40 = local_40 + -1;\n        goto LAB_00011b37;\n      }" if (parenthesized_expression "(local_30 == 0xffffffff)" ( (binary_expression "local_30 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n        if ((p_Var6->_flags & 0x20) == 0) {\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        if (p_Var6 == p_Var1) {\n          clearerr_unlocked(p_Var6);\n        }\n        else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }\n        *piVar5 = 0;\n        local_40 = local_40 + -1;\n        goto LAB_00011b37;\n      }" { (if_statement "if ((p_Var6->_flags & 0x20) == 0) {\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }\n        else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }" if (parenthesized_expression "((p_Var6->_flags & 0x20) == 0)" ( (binary_expression "(p_Var6->_flags & 0x20) == 0" (parenthesized_expression "(p_Var6->_flags & 0x20)" ( (binary_expression "p_Var6->_flags & 0x20" (field_expression "p_Var6->_flags" identifier -> field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }" { (expression_statement "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;" (assignment_expression "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0" identifier = (pointer_expression "*(_IO_FILE **)PTR_stdin_0001bfd0" * (cast_expression "(_IO_FILE **)PTR_stdin_0001bfd0" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) }) (else_clause "else {\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }" else (compound_statement "{\n          pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n          error(0,local_3c,"%s",pcVar7);\n          local_31 = '\0';\n          p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n        }" { (expression_statement "pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);" (assignment_expression "pcVar7 = quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)])" identifier = (call_expression "quotearg_n_style_colon\n                             (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)])" identifier (argument_list "(0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)])" ( number_literal , identifier , (subscript_expression "fnamptr[(int)(local_50 + -1)]" identifier [ (cast_expression "(int)(local_50 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(local_50 + -1)" ( (binary_expression "local_50 + -1" identifier + number_literal) ))) ]) )))) ;) (expression_statement "error(0,local_3c,"%s",pcVar7);" (call_expression "error(0,local_3c,"%s",pcVar7)" identifier (argument_list "(0,local_3c,"%s",pcVar7)" ( number_literal , identifier , (string_literal ""%s"" " string_content ") , identifier ))) ;) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;" (assignment_expression "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0" identifier = (pointer_expression "*(_IO_FILE **)PTR_stdin_0001bfd0" * (cast_expression "(_IO_FILE **)PTR_stdin_0001bfd0" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) }))) (if_statement "if (p_Var6 == p_Var1) {\n          clearerr_unlocked(p_Var6);\n        }\n        else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }" if (parenthesized_expression "(p_Var6 == p_Var1)" ( (binary_expression "p_Var6 == p_Var1" identifier == identifier) )) (compound_statement "{\n          clearerr_unlocked(p_Var6);\n        }" { (expression_statement "clearerr_unlocked(p_Var6);" (call_expression "clearerr_unlocked(p_Var6)" identifier (argument_list "(p_Var6)" ( identifier ))) ;) }) (else_clause "else {\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }" else (compound_statement "{\n          iVar9 = rpl_fclose((FILE *)p_Var6);\n          if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }\n        }" { (expression_statement "iVar9 = rpl_fclose((FILE *)p_Var6);" (assignment_expression "iVar9 = rpl_fclose((FILE *)p_Var6)" identifier = (call_expression "rpl_fclose((FILE *)p_Var6)" identifier (argument_list "((FILE *)p_Var6)" ( (cast_expression "(FILE *)p_Var6" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (if_statement "if (iVar9 == -1) {\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }" if (parenthesized_expression "(iVar9 == -1)" ( (binary_expression "iVar9 == -1" identifier == number_literal) )) (compound_statement "{\n            pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);\n            error(0,*local_24,"%s",pcVar7);\n            local_31 = '\0';\n          }" { (expression_statement "pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)]);" (assignment_expression "pcVar7 = quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)])" identifier = (call_expression "quotearg_n_style_colon\n                               (0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)])" identifier (argument_list "(0,shell_escape_quoting_style,fnamptr[(int)(local_50 + -1)])" ( number_literal , identifier , (subscript_expression "fnamptr[(int)(local_50 + -1)]" identifier [ (cast_expression "(int)(local_50 + -1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(local_50 + -1)" ( (binary_expression "local_50 + -1" identifier + number_literal) ))) ]) )))) ;) (expression_statement "error(0,*local_24,"%s",pcVar7);" (call_expression "error(0,*local_24,"%s",pcVar7)" identifier (argument_list "(0,*local_24,"%s",pcVar7)" ( number_literal , (pointer_expression "*local_24" * identifier) , (string_literal ""%s"" " string_content ") , identifier ))) ;) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) })) }))) (expression_statement "*piVar5 = 0;" (assignment_expression "*piVar5 = 0" (pointer_expression "*piVar5" * identifier) = number_literal) ;) (expression_statement "local_40 = local_40 + -1;" (assignment_expression "local_40 = local_40 + -1" identifier = (binary_expression "local_40 + -1" identifier + number_literal)) ;) (goto_statement "goto LAB_00011b37;" goto statement_identifier ;) })) }))) (expression_statement "piVar16 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "piVar16 = (int *)PTR_stdout_0001bfd4" identifier = (cast_expression "(int *)PTR_stdout_0001bfd4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (uVar10 == line_delim) {\n      piVar16 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n    }\n    else {\n      do {\n        p_Var6 = (_IO_FILE *)*piVar16;\n        pcVar7 = p_Var6->_IO_write_ptr;\n        if (pcVar7 < p_Var6->_IO_write_end) {\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }\n        else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }\n        p_Var6 = (_IO_FILE *)*piVar5;\n        pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n        if (pbVar15 < p_Var6->_IO_read_end) {\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }\n        else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }\n      } while (line_delim != uVar10);\n      if (local_48 != local_50) {\nLAB_00011ae1:\n        bVar20 = *local_4c;\n        if (bVar20 != 0) {\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }\n        local_4c = local_4c + 1;\n        bVar18 = true;\n        if ((byte *)delim_end == local_4c) goto LAB_00011b6f;\n        goto LAB_00011b06;\n      }\n    }" if (parenthesized_expression "(uVar10 == line_delim)" ( (binary_expression "uVar10 == line_delim" identifier == identifier) )) (compound_statement "{\n      piVar16 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n    }" { (expression_statement "piVar16 = local_20;" (assignment_expression "piVar16 = local_20" identifier = identifier) ;) (if_statement "if (local_48 != local_50) goto LAB_00011ae1;" if (parenthesized_expression "(local_48 != local_50)" ( (binary_expression "local_48 != local_50" identifier != identifier) )) (goto_statement "goto LAB_00011ae1;" goto statement_identifier ;)) }) (else_clause "else {\n      do {\n        p_Var6 = (_IO_FILE *)*piVar16;\n        pcVar7 = p_Var6->_IO_write_ptr;\n        if (pcVar7 < p_Var6->_IO_write_end) {\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }\n        else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }\n        p_Var6 = (_IO_FILE *)*piVar5;\n        pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n        if (pbVar15 < p_Var6->_IO_read_end) {\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }\n        else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }\n      } while (line_delim != uVar10);\n      if (local_48 != local_50) {\nLAB_00011ae1:\n        bVar20 = *local_4c;\n        if (bVar20 != 0) {\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }\n        local_4c = local_4c + 1;\n        bVar18 = true;\n        if ((byte *)delim_end == local_4c) goto LAB_00011b6f;\n        goto LAB_00011b06;\n      }\n    }" else (compound_statement "{\n      do {\n        p_Var6 = (_IO_FILE *)*piVar16;\n        pcVar7 = p_Var6->_IO_write_ptr;\n        if (pcVar7 < p_Var6->_IO_write_end) {\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }\n        else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }\n        p_Var6 = (_IO_FILE *)*piVar5;\n        pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n        if (pbVar15 < p_Var6->_IO_read_end) {\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }\n        else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }\n      } while (line_delim != uVar10);\n      if (local_48 != local_50) {\nLAB_00011ae1:\n        bVar20 = *local_4c;\n        if (bVar20 != 0) {\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }\n        local_4c = local_4c + 1;\n        bVar18 = true;\n        if ((byte *)delim_end == local_4c) goto LAB_00011b6f;\n        goto LAB_00011b06;\n      }\n    }" { (do_statement "do {\n        p_Var6 = (_IO_FILE *)*piVar16;\n        pcVar7 = p_Var6->_IO_write_ptr;\n        if (pcVar7 < p_Var6->_IO_write_end) {\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }\n        else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }\n        p_Var6 = (_IO_FILE *)*piVar5;\n        pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n        if (pbVar15 < p_Var6->_IO_read_end) {\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }\n        else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }\n      } while (line_delim != uVar10);" do (compound_statement "{\n        p_Var6 = (_IO_FILE *)*piVar16;\n        pcVar7 = p_Var6->_IO_write_ptr;\n        if (pcVar7 < p_Var6->_IO_write_end) {\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }\n        else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }\n        p_Var6 = (_IO_FILE *)*piVar5;\n        pbVar15 = (byte *)p_Var6->_IO_read_ptr;\n        if (pbVar15 < p_Var6->_IO_read_end) {\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }\n        else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }\n      }" { (expression_statement "p_Var6 = (_IO_FILE *)*piVar16;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar16" identifier = (cast_expression "(_IO_FILE *)*piVar16" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar16" * identifier))) ;) (expression_statement "pcVar7 = p_Var6->_IO_write_ptr;" (assignment_expression "pcVar7 = p_Var6->_IO_write_ptr" identifier = (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier)) ;) (if_statement "if (pcVar7 < p_Var6->_IO_write_end) {\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }\n        else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }" if (parenthesized_expression "(pcVar7 < p_Var6->_IO_write_end)" ( (binary_expression "pcVar7 < p_Var6->_IO_write_end" identifier < (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\n          p_Var6->_IO_write_ptr = pcVar7 + 1;\n          *pcVar7 = (char)uVar10;\n        }" { (expression_statement "p_Var6->_IO_write_ptr = pcVar7 + 1;" (assignment_expression "p_Var6->_IO_write_ptr = pcVar7 + 1" (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier) = (binary_expression "pcVar7 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar7 = (char)uVar10;" (assignment_expression "*pcVar7 = (char)uVar10" (pointer_expression "*pcVar7" * identifier) = (cast_expression "(char)uVar10" ( (type_descriptor "char" primitive_type) ) identifier)) ;) }) (else_clause "else {\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }" else (compound_statement "{\n          iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n          if (iVar9 < 0) goto LAB_00011ab9;\n        }" { (expression_statement "iVar9 = __overflow(p_Var6,uVar10 & 0xff);" (assignment_expression "iVar9 = __overflow(p_Var6,uVar10 & 0xff)" identifier = (call_expression "__overflow(p_Var6,uVar10 & 0xff)" identifier (argument_list "(p_Var6,uVar10 & 0xff)" ( identifier , (binary_expression "uVar10 & 0xff" identifier & number_literal) )))) ;) (if_statement "if (iVar9 < 0) goto LAB_00011ab9;" if (parenthesized_expression "(iVar9 < 0)" ( (binary_expression "iVar9 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) }))) (expression_statement "p_Var6 = (_IO_FILE *)*piVar5;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar5" identifier = (cast_expression "(_IO_FILE *)*piVar5" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar5" * identifier))) ;) (expression_statement "pbVar15 = (byte *)p_Var6->_IO_read_ptr;" (assignment_expression "pbVar15 = (byte *)p_Var6->_IO_read_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_read_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier))) ;) (if_statement "if (pbVar15 < p_Var6->_IO_read_end) {\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }\n        else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }" if (parenthesized_expression "(pbVar15 < p_Var6->_IO_read_end)" ( (binary_expression "pbVar15 < p_Var6->_IO_read_end" identifier < (field_expression "p_Var6->_IO_read_end" identifier -> field_identifier)) )) (compound_statement "{\n          p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);\n          uVar10 = (uint)*pbVar15;\n        }" { (expression_statement "p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1);" (assignment_expression "p_Var6->_IO_read_ptr = (char *)(pbVar15 + 1)" (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar15 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar15 + 1)" ( (binary_expression "pbVar15 + 1" identifier + number_literal) )))) ;) (expression_statement "uVar10 = (uint)*pbVar15;" (assignment_expression "uVar10 = (uint)*pbVar15" identifier = (binary_expression "(uint)*pbVar15" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) }) (else_clause "else {\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }" else (compound_statement "{\n          uVar10 = __uflow(p_Var6);\n          if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }\n        }" { (expression_statement "uVar10 = __uflow(p_Var6);" (assignment_expression "uVar10 = __uflow(p_Var6)" identifier = (call_expression "__uflow(p_Var6)" identifier (argument_list "(p_Var6)" ( identifier )))) ;) (if_statement "if (uVar10 == 0xffffffff) {\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }" if (parenthesized_expression "(uVar10 == 0xffffffff)" ( (binary_expression "uVar10 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n            if (local_48 != local_50) goto LAB_00011ae1;\n            p_Var6 = (_IO_FILE *)*piVar16;\n            uVar10 = (uint)line_delim;\n            puVar11 = (uchar *)p_Var6->_IO_write_ptr;\n            uVar8 = line_delim;\n            if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;\n            goto LAB_00011b9c;\n          }" { (if_statement "if (local_48 != local_50) goto LAB_00011ae1;" if (parenthesized_expression "(local_48 != local_50)" ( (binary_expression "local_48 != local_50" identifier != identifier) )) (goto_statement "goto LAB_00011ae1;" goto statement_identifier ;)) (expression_statement "p_Var6 = (_IO_FILE *)*piVar16;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar16" identifier = (cast_expression "(_IO_FILE *)*piVar16" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar16" * identifier))) ;) (expression_statement "uVar10 = (uint)line_delim;" (assignment_expression "uVar10 = (uint)line_delim" identifier = (cast_expression "(uint)line_delim" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "puVar11 = (uchar *)p_Var6->_IO_write_ptr;" (assignment_expression "puVar11 = (uchar *)p_Var6->_IO_write_ptr" identifier = (cast_expression "(uchar *)p_Var6->_IO_write_ptr" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier))) ;) (expression_statement "uVar8 = line_delim;" (assignment_expression "uVar8 = line_delim" identifier = identifier) ;) (if_statement "if (p_Var6->_IO_write_end <= puVar11) goto LAB_00011c45;" if (parenthesized_expression "(p_Var6->_IO_write_end <= puVar11)" ( (binary_expression "p_Var6->_IO_write_end <= puVar11" (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier) <= identifier) )) (goto_statement "goto LAB_00011c45;" goto statement_identifier ;)) (goto_statement "goto LAB_00011b9c;" goto statement_identifier ;) })) }))) }) while (parenthesized_expression "(line_delim != uVar10)" ( (binary_expression "line_delim != uVar10" identifier != identifier) )) ;) (if_statement "if (local_48 != local_50) {\nLAB_00011ae1:\n        bVar20 = *local_4c;\n        if (bVar20 != 0) {\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }\n        local_4c = local_4c + 1;\n        bVar18 = true;\n        if ((byte *)delim_end == local_4c) goto LAB_00011b6f;\n        goto LAB_00011b06;\n      }" if (parenthesized_expression "(local_48 != local_50)" ( (binary_expression "local_48 != local_50" identifier != identifier) )) (compound_statement "{\nLAB_00011ae1:\n        bVar20 = *local_4c;\n        if (bVar20 != 0) {\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }\n        local_4c = local_4c + 1;\n        bVar18 = true;\n        if ((byte *)delim_end == local_4c) goto LAB_00011b6f;\n        goto LAB_00011b06;\n      }" { (labeled_statement "LAB_00011ae1:\n        bVar20 = *local_4c;" statement_identifier : (expression_statement "bVar20 = *local_4c;" (assignment_expression "bVar20 = *local_4c" identifier = (pointer_expression "*local_4c" * identifier)) ;)) (if_statement "if (bVar20 != 0) {\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }" if (parenthesized_expression "(bVar20 != 0)" ( (binary_expression "bVar20 != 0" identifier != number_literal) )) (compound_statement "{\n          p_Var6 = (_IO_FILE *)*local_28;\n          pbVar15 = (byte *)p_Var6->_IO_write_ptr;\n          if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }\n        }" { (expression_statement "p_Var6 = (_IO_FILE *)*local_28;" (assignment_expression "p_Var6 = (_IO_FILE *)*local_28" identifier = (cast_expression "(_IO_FILE *)*local_28" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_28" * identifier))) ;) (expression_statement "pbVar15 = (byte *)p_Var6->_IO_write_ptr;" (assignment_expression "pbVar15 = (byte *)p_Var6->_IO_write_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier))) ;) (if_statement "if (pbVar15 < p_Var6->_IO_write_end) {\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }\n          else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }" if (parenthesized_expression "(pbVar15 < p_Var6->_IO_write_end)" ( (binary_expression "pbVar15 < p_Var6->_IO_write_end" identifier < (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\n            p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);\n            *pbVar15 = bVar20;\n          }" { (expression_statement "p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1);" (assignment_expression "p_Var6->_IO_write_ptr = (char *)(pbVar15 + 1)" (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar15 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar15 + 1)" ( (binary_expression "pbVar15 + 1" identifier + number_literal) )))) ;) (expression_statement "*pbVar15 = bVar20;" (assignment_expression "*pbVar15 = bVar20" (pointer_expression "*pbVar15" * identifier) = identifier) ;) }) (else_clause "else {\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }" else (compound_statement "{\n            iVar9 = __overflow(p_Var6,(uint)bVar20);\n            if (iVar9 < 0) goto LAB_00011ab9;\n          }" { (expression_statement "iVar9 = __overflow(p_Var6,(uint)bVar20);" (assignment_expression "iVar9 = __overflow(p_Var6,(uint)bVar20)" identifier = (call_expression "__overflow(p_Var6,(uint)bVar20)" identifier (argument_list "(p_Var6,(uint)bVar20)" ( identifier , (cast_expression "(uint)bVar20" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (if_statement "if (iVar9 < 0) goto LAB_00011ab9;" if (parenthesized_expression "(iVar9 < 0)" ( (binary_expression "iVar9 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) }))) })) (expression_statement "local_4c = local_4c + 1;" (assignment_expression "local_4c = local_4c + 1" identifier = (binary_expression "local_4c + 1" identifier + number_literal)) ;) (expression_statement "bVar18 = true;" (assignment_expression "bVar18 = true" identifier = true) ;) (if_statement "if ((byte *)delim_end == local_4c) goto LAB_00011b6f;" if (parenthesized_expression "((byte *)delim_end == local_4c)" ( (binary_expression "(byte *)delim_end == local_4c" (cast_expression "(byte *)delim_end" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == identifier) )) (goto_statement "goto LAB_00011b6f;" goto statement_identifier ;)) (goto_statement "goto LAB_00011b06;" goto statement_identifier ;) })) }))) (expression_statement "p_Var6 = (_IO_FILE *)*piVar16;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar16" identifier = (cast_expression "(_IO_FILE *)*piVar16" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar16" * identifier))) ;) (expression_statement "puVar11 = (uchar *)p_Var6->_IO_write_ptr;" (assignment_expression "puVar11 = (uchar *)p_Var6->_IO_write_ptr" identifier = (cast_expression "(uchar *)p_Var6->_IO_write_ptr" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier))) ;) (expression_statement "uVar8 = (uchar)uVar10;" (assignment_expression "uVar8 = (uchar)uVar10" identifier = (cast_expression "(uchar)uVar10" ( (type_descriptor "uchar" type_identifier) ) identifier)) ;) (if_statement "if (puVar11 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n      p_Var6->_IO_write_ptr = (char *)(puVar11 + 1);\n      *puVar11 = uVar8;\n    }\n    else {\nLAB_00011c45:\n      iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n      if (iVar9 < 0) {\nLAB_00011ab9:\n                    /* WARNING: Subroutine does not return */\n        write_error();\n      }\n    }" if (parenthesized_expression "(puVar11 < p_Var6->_IO_write_end)" ( (binary_expression "puVar11 < p_Var6->_IO_write_end" identifier < (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\nLAB_00011b9c:\n      p_Var6->_IO_write_ptr = (char *)(puVar11 + 1);\n      *puVar11 = uVar8;\n    }" { (labeled_statement "LAB_00011b9c:\n      p_Var6->_IO_write_ptr = (char *)(puVar11 + 1);" statement_identifier : (expression_statement "p_Var6->_IO_write_ptr = (char *)(puVar11 + 1);" (assignment_expression "p_Var6->_IO_write_ptr = (char *)(puVar11 + 1)" (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(puVar11 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 1)" ( (binary_expression "puVar11 + 1" identifier + number_literal) )))) ;)) (expression_statement "*puVar11 = uVar8;" (assignment_expression "*puVar11 = uVar8" (pointer_expression "*puVar11" * identifier) = identifier) ;) }) (else_clause "else {\nLAB_00011c45:\n      iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n      if (iVar9 < 0) {\nLAB_00011ab9:\n                    /* WARNING: Subroutine does not return */\n        write_error();\n      }\n    }" else (compound_statement "{\nLAB_00011c45:\n      iVar9 = __overflow(p_Var6,uVar10 & 0xff);\n      if (iVar9 < 0) {\nLAB_00011ab9:\n                    /* WARNING: Subroutine does not return */\n        write_error();\n      }\n    }" { (labeled_statement "LAB_00011c45:\n      iVar9 = __overflow(p_Var6,uVar10 & 0xff);" statement_identifier : (expression_statement "iVar9 = __overflow(p_Var6,uVar10 & 0xff);" (assignment_expression "iVar9 = __overflow(p_Var6,uVar10 & 0xff)" identifier = (call_expression "__overflow(p_Var6,uVar10 & 0xff)" identifier (argument_list "(p_Var6,uVar10 & 0xff)" ( identifier , (binary_expression "uVar10 & 0xff" identifier & number_literal) )))) ;)) (if_statement "if (iVar9 < 0) {\nLAB_00011ab9:\n                    /* WARNING: Subroutine does not return */\n        write_error();\n      }" if (parenthesized_expression "(iVar9 < 0)" ( (binary_expression "iVar9 < 0" identifier < number_literal) )) (compound_statement "{\nLAB_00011ab9:\n                    /* WARNING: Subroutine does not return */\n        write_error();\n      }" { (labeled_statement "LAB_00011ab9:\n                    /* WARNING: Subroutine does not return */\n        write_error();" statement_identifier : comment (expression_statement "write_error();" (call_expression "write_error()" identifier (argument_list "()" ( ))) ;)) })) }))) (expression_statement "bVar18 = true;" (assignment_expression "bVar18 = true" identifier = true) ;) (labeled_statement "LAB_00011b06:\n    pbVar15 = local_50 + 1;" statement_identifier : (expression_statement "pbVar15 = local_50 + 1;" (assignment_expression "pbVar15 = local_50 + 1" identifier = (binary_expression "local_50 + 1" identifier + number_literal)) ;)) (expression_statement "piVar5 = piVar5 + 1;" (assignment_expression "piVar5 = piVar5 + 1" identifier = (binary_expression "piVar5 + 1" identifier + number_literal)) ;) (expression_statement "bVar19 = local_50 < local_48;" (assignment_expression "bVar19 = local_50 < local_48" identifier = (binary_expression "local_50 < local_48" identifier < identifier)) ;) (expression_statement "local_50 = pbVar15;" (assignment_expression "local_50 = pbVar15" identifier = identifier) ;) (if_statement "if (bVar19 && local_40 != (byte *)0x0) {\n      p_Var6 = (_IO_FILE *)*piVar5;\n      if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n      piVar16 = local_44;\n      puVar2 = PTR_stdout_0001bfd4;\n      if (local_48 != local_50) {\n        if (*local_4c != 0) {\n          *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n          local_44 = (int *)((int)local_44 + 1);\n        }\n        local_4c = local_4c + 1;\n        if ((byte *)delim_end == local_4c) {\nLAB_00011b6f:\n          local_4c = (byte *)delims;\n        }\n        goto LAB_00011b06;\n      }\n      if (bVar18) {\n        pFVar3 = *(FILE **)PTR_stdout_0001bfd4;\n        if (local_44 != (int *)0x0) {\n          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);\n          if (piVar5 != piVar16) goto LAB_00011ab9;\n          pFVar3 = *(FILE **)puVar2;\n        }\n        uVar8 = line_delim;\n        puVar11 = (uchar *)pFVar3->_IO_write_ptr;\n        if (pFVar3->_IO_write_end <= puVar11) {\n          iVar9 = __overflow(pFVar3,(uint)line_delim);\n          if (-1 < iVar9) goto LAB_00011bf9;\n          goto LAB_00011ab9;\n        }\n        pFVar3->_IO_write_ptr = (char *)(puVar11 + 1);\n        *puVar11 = uVar8;\n      }\n    }" if (parenthesized_expression "(bVar19 && local_40 != (byte *)0x0)" ( (binary_expression "bVar19 && local_40 != (byte *)0x0" identifier && (binary_expression "local_40 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n      p_Var6 = (_IO_FILE *)*piVar5;\n      if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n      piVar16 = local_44;\n      puVar2 = PTR_stdout_0001bfd4;\n      if (local_48 != local_50) {\n        if (*local_4c != 0) {\n          *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n          local_44 = (int *)((int)local_44 + 1);\n        }\n        local_4c = local_4c + 1;\n        if ((byte *)delim_end == local_4c) {\nLAB_00011b6f:\n          local_4c = (byte *)delims;\n        }\n        goto LAB_00011b06;\n      }\n      if (bVar18) {\n        pFVar3 = *(FILE **)PTR_stdout_0001bfd4;\n        if (local_44 != (int *)0x0) {\n          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);\n          if (piVar5 != piVar16) goto LAB_00011ab9;\n          pFVar3 = *(FILE **)puVar2;\n        }\n        uVar8 = line_delim;\n        puVar11 = (uchar *)pFVar3->_IO_write_ptr;\n        if (pFVar3->_IO_write_end <= puVar11) {\n          iVar9 = __overflow(pFVar3,(uint)line_delim);\n          if (-1 < iVar9) goto LAB_00011bf9;\n          goto LAB_00011ab9;\n        }\n        pFVar3->_IO_write_ptr = (char *)(puVar11 + 1);\n        *puVar11 = uVar8;\n      }\n    }" { (expression_statement "p_Var6 = (_IO_FILE *)*piVar5;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar5" identifier = (cast_expression "(_IO_FILE *)*piVar5" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar5" * identifier))) ;) (if_statement "if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;" if (parenthesized_expression "(p_Var6 != (_IO_FILE *)0x0)" ( (binary_expression "p_Var6 != (_IO_FILE *)0x0" identifier != (cast_expression "(_IO_FILE *)0x0" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011a08;" goto statement_identifier ;)) (labeled_statement "LAB_00011b37:\n      piVar16 = local_44;" statement_identifier : (expression_statement "piVar16 = local_44;" (assignment_expression "piVar16 = local_44" identifier = identifier) ;)) (expression_statement "puVar2 = PTR_stdout_0001bfd4;" (assignment_expression "puVar2 = PTR_stdout_0001bfd4" identifier = identifier) ;) (if_statement "if (local_48 != local_50) {\n        if (*local_4c != 0) {\n          *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n          local_44 = (int *)((int)local_44 + 1);\n        }\n        local_4c = local_4c + 1;\n        if ((byte *)delim_end == local_4c) {\nLAB_00011b6f:\n          local_4c = (byte *)delims;\n        }\n        goto LAB_00011b06;\n      }" if (parenthesized_expression "(local_48 != local_50)" ( (binary_expression "local_48 != local_50" identifier != identifier) )) (compound_statement "{\n        if (*local_4c != 0) {\n          *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n          local_44 = (int *)((int)local_44 + 1);\n        }\n        local_4c = local_4c + 1;\n        if ((byte *)delim_end == local_4c) {\nLAB_00011b6f:\n          local_4c = (byte *)delims;\n        }\n        goto LAB_00011b06;\n      }" { (if_statement "if (*local_4c != 0) {\n          *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n          local_44 = (int *)((int)local_44 + 1);\n        }" if (parenthesized_expression "(*local_4c != 0)" ( (binary_expression "*local_4c != 0" (pointer_expression "*local_4c" * identifier) != number_literal) )) (compound_statement "{\n          *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n          local_44 = (int *)((int)local_44 + 1);\n        }" { (expression_statement "*(byte *)((int)local_38 + (int)local_44) = *local_4c;" (assignment_expression "*(byte *)((int)local_38 + (int)local_44) = *local_4c" (pointer_expression "*(byte *)((int)local_38 + (int)local_44)" * (cast_expression "(byte *)((int)local_38 + (int)local_44)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_38 + (int)local_44)" ( (binary_expression "(int)local_38 + (int)local_44" (cast_expression "(int)local_38" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_44" ( (type_descriptor "int" primitive_type) ) identifier)) )))) = (pointer_expression "*local_4c" * identifier)) ;) (expression_statement "local_44 = (int *)((int)local_44 + 1);" (assignment_expression "local_44 = (int *)((int)local_44 + 1)" identifier = (cast_expression "(int *)((int)local_44 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_44 + 1)" ( (binary_expression "(int)local_44 + 1" (cast_expression "(int)local_44" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) })) (expression_statement "local_4c = local_4c + 1;" (assignment_expression "local_4c = local_4c + 1" identifier = (binary_expression "local_4c + 1" identifier + number_literal)) ;) (if_statement "if ((byte *)delim_end == local_4c) {\nLAB_00011b6f:\n          local_4c = (byte *)delims;\n        }" if (parenthesized_expression "((byte *)delim_end == local_4c)" ( (binary_expression "(byte *)delim_end == local_4c" (cast_expression "(byte *)delim_end" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == identifier) )) (compound_statement "{\nLAB_00011b6f:\n          local_4c = (byte *)delims;\n        }" { (labeled_statement "LAB_00011b6f:\n          local_4c = (byte *)delims;" statement_identifier : (expression_statement "local_4c = (byte *)delims;" (assignment_expression "local_4c = (byte *)delims" identifier = (cast_expression "(byte *)delims" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) })) (goto_statement "goto LAB_00011b06;" goto statement_identifier ;) })) (if_statement "if (bVar18) {\n        pFVar3 = *(FILE **)PTR_stdout_0001bfd4;\n        if (local_44 != (int *)0x0) {\n          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);\n          if (piVar5 != piVar16) goto LAB_00011ab9;\n          pFVar3 = *(FILE **)puVar2;\n        }\n        uVar8 = line_delim;\n        puVar11 = (uchar *)pFVar3->_IO_write_ptr;\n        if (pFVar3->_IO_write_end <= puVar11) {\n          iVar9 = __overflow(pFVar3,(uint)line_delim);\n          if (-1 < iVar9) goto LAB_00011bf9;\n          goto LAB_00011ab9;\n        }\n        pFVar3->_IO_write_ptr = (char *)(puVar11 + 1);\n        *puVar11 = uVar8;\n      }" if (parenthesized_expression "(bVar18)" ( identifier )) (compound_statement "{\n        pFVar3 = *(FILE **)PTR_stdout_0001bfd4;\n        if (local_44 != (int *)0x0) {\n          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);\n          if (piVar5 != piVar16) goto LAB_00011ab9;\n          pFVar3 = *(FILE **)puVar2;\n        }\n        uVar8 = line_delim;\n        puVar11 = (uchar *)pFVar3->_IO_write_ptr;\n        if (pFVar3->_IO_write_end <= puVar11) {\n          iVar9 = __overflow(pFVar3,(uint)line_delim);\n          if (-1 < iVar9) goto LAB_00011bf9;\n          goto LAB_00011ab9;\n        }\n        pFVar3->_IO_write_ptr = (char *)(puVar11 + 1);\n        *puVar11 = uVar8;\n      }" { (expression_statement "pFVar3 = *(FILE **)PTR_stdout_0001bfd4;" (assignment_expression "pFVar3 = *(FILE **)PTR_stdout_0001bfd4" identifier = (pointer_expression "*(FILE **)PTR_stdout_0001bfd4" * (cast_expression "(FILE **)PTR_stdout_0001bfd4" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (if_statement "if (local_44 != (int *)0x0) {\n          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);\n          if (piVar5 != piVar16) goto LAB_00011ab9;\n          pFVar3 = *(FILE **)puVar2;\n        }" if (parenthesized_expression "(local_44 != (int *)0x0)" ( (binary_expression "local_44 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);\n          if (piVar5 != piVar16) goto LAB_00011ab9;\n          pFVar3 = *(FILE **)puVar2;\n        }" { (expression_statement "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3);" (assignment_expression "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3)" identifier = (cast_expression "(int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "fwrite_unlocked(local_38,1,(size_t)local_44,pFVar3)" identifier (argument_list "(local_38,1,(size_t)local_44,pFVar3)" ( identifier , number_literal , (cast_expression "(size_t)local_44" ( (type_descriptor "size_t" primitive_type) ) identifier) , identifier ))))) ;) (if_statement "if (piVar5 != piVar16) goto LAB_00011ab9;" if (parenthesized_expression "(piVar5 != piVar16)" ( (binary_expression "piVar5 != piVar16" identifier != identifier) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) (expression_statement "pFVar3 = *(FILE **)puVar2;" (assignment_expression "pFVar3 = *(FILE **)puVar2" identifier = (pointer_expression "*(FILE **)puVar2" * (cast_expression "(FILE **)puVar2" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) })) (expression_statement "uVar8 = line_delim;" (assignment_expression "uVar8 = line_delim" identifier = identifier) ;) (expression_statement "puVar11 = (uchar *)pFVar3->_IO_write_ptr;" (assignment_expression "puVar11 = (uchar *)pFVar3->_IO_write_ptr" identifier = (cast_expression "(uchar *)pFVar3->_IO_write_ptr" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pFVar3->_IO_write_ptr" identifier -> field_identifier))) ;) (if_statement "if (pFVar3->_IO_write_end <= puVar11) {\n          iVar9 = __overflow(pFVar3,(uint)line_delim);\n          if (-1 < iVar9) goto LAB_00011bf9;\n          goto LAB_00011ab9;\n        }" if (parenthesized_expression "(pFVar3->_IO_write_end <= puVar11)" ( (binary_expression "pFVar3->_IO_write_end <= puVar11" (field_expression "pFVar3->_IO_write_end" identifier -> field_identifier) <= identifier) )) (compound_statement "{\n          iVar9 = __overflow(pFVar3,(uint)line_delim);\n          if (-1 < iVar9) goto LAB_00011bf9;\n          goto LAB_00011ab9;\n        }" { (expression_statement "iVar9 = __overflow(pFVar3,(uint)line_delim);" (assignment_expression "iVar9 = __overflow(pFVar3,(uint)line_delim)" identifier = (call_expression "__overflow(pFVar3,(uint)line_delim)" identifier (argument_list "(pFVar3,(uint)line_delim)" ( identifier , (cast_expression "(uint)line_delim" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (if_statement "if (-1 < iVar9) goto LAB_00011bf9;" if (parenthesized_expression "(-1 < iVar9)" ( (binary_expression "-1 < iVar9" number_literal < identifier) )) (goto_statement "goto LAB_00011bf9;" goto statement_identifier ;)) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;) })) (expression_statement "pFVar3->_IO_write_ptr = (char *)(puVar11 + 1);" (assignment_expression "pFVar3->_IO_write_ptr = (char *)(puVar11 + 1)" (field_expression "pFVar3->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(puVar11 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 1)" ( (binary_expression "puVar11 + 1" identifier + number_literal) )))) ;) (expression_statement "*puVar11 = uVar8;" (assignment_expression "*puVar11 = uVar8" (pointer_expression "*puVar11" * identifier) = identifier) ;) })) })) (labeled_statement "LAB_00011bf9:\n    if (local_40 == (byte *)0x0) goto LAB_00011c05;" statement_identifier : (if_statement "if (local_40 == (byte *)0x0) goto LAB_00011c05;" if (parenthesized_expression "(local_40 == (byte *)0x0)" ( (binary_expression "local_40 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011c05;" goto statement_identifier ;))) (goto_statement "goto LAB_000119d5;" goto statement_identifier ;) })) (labeled_statement "LAB_00011e3f:\n                    /* WARNING: Subroutine does not return */\n  *(undefined **)(puVar13 + -4) = &UNK_00011e44;" statement_identifier : comment (expression_statement "*(undefined **)(puVar13 + -4) = &UNK_00011e44;" (assignment_expression "*(undefined **)(puVar13 + -4) = &UNK_00011e44" (pointer_expression "*(undefined **)(puVar13 + -4)" * (cast_expression "(undefined **)(puVar13 + -4)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar13 + -4)" ( (binary_expression "puVar13 + -4" identifier + number_literal) )))) = (pointer_expression "&UNK_00011e44" & identifier)) ;)) (expression_statement "xalloc_die();" (call_expression "xalloc_die()" identifier (argument_list "()" ( ))) ;) })))
(translation_unit "char FUN_00011870(byte *param_1,undefined4 *param_2)\n\n{\n  _IO_FILE *p_Var1;\n  char *pcVar2;\n  int *piVar3;\n  FILE *pFVar4;\n  int *piVar5;\n  _IO_FILE *p_Var6;\n  uint uVar7;\n  undefined4 uVar8;\n  int *piVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  byte *pbVar13;\n  int *piVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  undefined1 auStack_5c [12];\n  byte *local_50;\n  byte *local_4c;\n  byte *local_48;\n  int *local_44;\n  byte *local_40;\n  uint local_3c;\n  void *local_38;\n  char local_31;\n  uint local_30;\n  int *local_2c;\n  int *local_28;\n  uint *local_24;\n  int *local_20;\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x11879;\n  local_38 = (void *)FUN_00014cb0();\n  puVar12 = auStack_5c;\n  if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    \n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}\n\n" (function_definition "char FUN_00011870(byte *param_1,undefined4 *param_2)\n\n{\n  _IO_FILE *p_Var1;\n  char *pcVar2;\n  int *piVar3;\n  FILE *pFVar4;\n  int *piVar5;\n  _IO_FILE *p_Var6;\n  uint uVar7;\n  undefined4 uVar8;\n  int *piVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  byte *pbVar13;\n  int *piVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  undefined1 auStack_5c [12];\n  byte *local_50;\n  byte *local_4c;\n  byte *local_48;\n  int *local_44;\n  byte *local_40;\n  uint local_3c;\n  void *local_38;\n  char local_31;\n  uint local_30;\n  int *local_2c;\n  int *local_28;\n  uint *local_24;\n  int *local_20;\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x11879;\n  local_38 = (void *)FUN_00014cb0();\n  puVar12 = auStack_5c;\n  if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    \n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" primitive_type (function_declarator "FUN_00011870(byte *param_1,undefined4 *param_2)" identifier (parameter_list "(byte *param_1,undefined4 *param_2)" ( (parameter_declaration "byte *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined4 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  _IO_FILE *p_Var1;\n  char *pcVar2;\n  int *piVar3;\n  FILE *pFVar4;\n  int *piVar5;\n  _IO_FILE *p_Var6;\n  uint uVar7;\n  undefined4 uVar8;\n  int *piVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  byte *pbVar13;\n  int *piVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  undefined1 auStack_5c [12];\n  byte *local_50;\n  byte *local_4c;\n  byte *local_48;\n  int *local_44;\n  byte *local_40;\n  uint local_3c;\n  void *local_38;\n  char local_31;\n  uint local_30;\n  int *local_2c;\n  int *local_28;\n  uint *local_24;\n  int *local_20;\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x11879;\n  local_38 = (void *)FUN_00014cb0();\n  puVar12 = auStack_5c;\n  if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    \n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" { (declaration "_IO_FILE *p_Var1;" type_identifier (pointer_declarator "*p_Var1" * identifier) ;) (declaration "char *pcVar2;" primitive_type (pointer_declarator "*pcVar2" * identifier) ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "FILE *pFVar4;" type_identifier (pointer_declarator "*pFVar4" * identifier) ;) (declaration "int *piVar5;" primitive_type (pointer_declarator "*piVar5" * identifier) ;) (declaration "_IO_FILE *p_Var6;" type_identifier (pointer_declarator "*p_Var6" * identifier) ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "undefined4 uVar8;" type_identifier identifier ;) (declaration "int *piVar9;" primitive_type (pointer_declarator "*piVar9" * identifier) ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "undefined1 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined1 *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "byte *pbVar13;" type_identifier (pointer_declarator "*pbVar13" * identifier) ;) (declaration "int *piVar14;" primitive_type (pointer_declarator "*piVar14" * identifier) ;) (declaration "byte *pbVar15;" type_identifier (pointer_declarator "*pbVar15" * identifier) ;) (declaration "bool bVar16;" primitive_type identifier ;) (declaration "bool bVar17;" primitive_type identifier ;) (declaration "byte bVar18;" type_identifier identifier ;) (declaration "undefined1 auStack_5c [12];" type_identifier (array_declarator "auStack_5c [12]" identifier [ number_literal ]) ;) (declaration "byte *local_50;" type_identifier (pointer_declarator "*local_50" * identifier) ;) (declaration "byte *local_4c;" type_identifier (pointer_declarator "*local_4c" * identifier) ;) (declaration "byte *local_48;" type_identifier (pointer_declarator "*local_48" * identifier) ;) (declaration "int *local_44;" primitive_type (pointer_declarator "*local_44" * identifier) ;) (declaration "byte *local_40;" type_identifier (pointer_declarator "*local_40" * identifier) ;) (declaration "uint local_3c;" type_identifier identifier ;) (declaration "void *local_38;" primitive_type (pointer_declarator "*local_38" * identifier) ;) (declaration "char local_31;" primitive_type identifier ;) (declaration "uint local_30;" type_identifier identifier ;) (declaration "int *local_2c;" primitive_type (pointer_declarator "*local_2c" * identifier) ;) (declaration "int *local_28;" primitive_type (pointer_declarator "*local_28" * identifier) ;) (declaration "uint *local_24;" type_identifier (pointer_declarator "*local_24" * identifier) ;) (declaration "int *local_20;" primitive_type (pointer_declarator "*local_20" * identifier) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "bVar18 = 0;" (assignment_expression "bVar18 = 0" identifier = number_literal) ;) (expression_statement "uStack_14 = 0x11879;" (assignment_expression "uStack_14 = 0x11879" identifier = number_literal) ;) (expression_statement "local_38 = (void *)FUN_00014cb0();" (assignment_expression "local_38 = (void *)FUN_00014cb0()" identifier = (cast_expression "(void *)FUN_00014cb0()" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00014cb0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar12 = auStack_5c;" (assignment_expression "puVar12 = auStack_5c" identifier = identifier) ;) (if_statement "if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    \n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" if (parenthesized_expression "((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0))" ( (binary_expression "(-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)" (parenthesized_expression "(-1 < (int)(param_1 + 1) * 4)" ( (binary_expression "-1 < (int)(param_1 + 1) * 4" number_literal < (binary_expression "(int)(param_1 + 1) * 4" (cast_expression "(int)(param_1 + 1)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(param_1 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) ))) * number_literal)) )) && (parenthesized_expression "(puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)" ( (comma_expression "puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0" (assignment_expression "puVar12 = auStack_5c" identifier = identifier) , (binary_expression "(uint)(param_1 + 1) >> 0x1e == 0" (binary_expression "(uint)(param_1 + 1) >> 0x1e" (call_expression "(uint)(param_1 + 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(param_1 + 1)" ( (binary_expression "param_1 + 1" identifier + number_literal) ))) >> number_literal) == number_literal)) ))) )) (compound_statement "{\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    \n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" { (expression_statement "local_2c = (int *)FUN_00014cb0();" (assignment_expression "local_2c = (int *)FUN_00014cb0()" identifier = (cast_expression "(int *)FUN_00014cb0()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00014cb0()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar11 = auStack_5c;" (assignment_expression "puVar11 = auStack_5c" identifier = identifier) ;) (expression_statement "bVar16 = false;" (assignment_expression "bVar16 = false" identifier = false) ;) (expression_statement "bVar17 = param_1 == (byte *)0x0;" (assignment_expression "bVar17 = param_1 == (byte *)0x0" identifier = (binary_expression "param_1 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ;) (if_statement "if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }" if (parenthesized_expression "(bVar17)" ( identifier )) (compound_statement "{\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }" { (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (labeled_statement "LAB_00011c05:\n      free(local_2c);" statement_identifier : (expression_statement "free(local_2c);" (call_expression "free(local_2c)" identifier (argument_list "(local_2c)" ( identifier ))) ;)) (expression_statement "free(local_38);" (call_expression "free(local_38)" identifier (argument_list "(local_38)" ( identifier ))) ;) (return_statement "return local_31;" return identifier ;) })) (expression_statement "local_50 = &DAT_000180ad;" (assignment_expression "local_50 = &DAT_000180ad" identifier = (pointer_expression "&DAT_000180ad" & identifier)) ;) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "local_4c = (byte *)0x17012;" (assignment_expression "local_4c = (byte *)0x17012" identifier = (cast_expression "(byte *)0x17012" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "local_48 = (byte *)0x0;" (assignment_expression "local_48 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "piVar9 = (int *)PTR_stdin_0001bfd0;" (assignment_expression "piVar9 = (int *)PTR_stdin_0001bfd0" identifier = (cast_expression "(int *)PTR_stdin_0001bfd0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (do_statement "do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);" do (compound_statement "{\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    }" { (expression_statement "iVar10 = 2;" (assignment_expression "iVar10 = 2" identifier = number_literal) ;) (expression_statement "pbVar13 = (byte *)*param_2;" (assignment_expression "pbVar13 = (byte *)*param_2" identifier = (cast_expression "(byte *)*param_2" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_2" * identifier))) ;) (expression_statement "pbVar15 = local_50;" (assignment_expression "pbVar15 = local_50" identifier = identifier) ;) (do_statement "do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);" do (compound_statement "{\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      }" { (if_statement "if (iVar10 == 0) break;" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (break_statement "break;" break ;)) (expression_statement "iVar10 = iVar10 + -1;" (assignment_expression "iVar10 = iVar10 + -1" identifier = (binary_expression "iVar10 + -1" identifier + number_literal)) ;) (expression_statement "bVar16 = *pbVar13 < *pbVar15;" (assignment_expression "bVar16 = *pbVar13 < *pbVar15" identifier = (binary_expression "*pbVar13 < *pbVar15" (pointer_expression "*pbVar13" * identifier) < (pointer_expression "*pbVar15" * identifier))) ;) (expression_statement "bVar17 = *pbVar13 == *pbVar15;" (assignment_expression "bVar17 = *pbVar13 == *pbVar15" identifier = (binary_expression "*pbVar13 == *pbVar15" (pointer_expression "*pbVar13" * identifier) == (pointer_expression "*pbVar15" * identifier))) ;) (expression_statement "pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1" identifier = (binary_expression "pbVar13 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar13 + (uint)bVar18 * -2" identifier + (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) (expression_statement "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1" identifier = (binary_expression "pbVar15 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar15 + (uint)bVar18 * -2" identifier + (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal)) + number_literal)) ;) }) while (parenthesized_expression "(bVar17)" ( identifier )) ;) (if_statement "if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }" if (parenthesized_expression "((!bVar16 && !bVar17) == bVar16)" ( (binary_expression "(!bVar16 && !bVar17) == bVar16" (parenthesized_expression "(!bVar16 && !bVar17)" ( (binary_expression "!bVar16 && !bVar17" (unary_expression "!bVar16" ! identifier) && (unary_expression "!bVar17" ! identifier)) )) == identifier) )) (compound_statement "{\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }" { (expression_statement "DAT_0001c171 = '\x01';" (assignment_expression "DAT_0001c171 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "local_2c[(int)local_48] = *piVar9;" (assignment_expression "local_2c[(int)local_48] = *piVar9" (subscript_expression "local_2c[(int)local_48]" identifier [ (cast_expression "(int)local_48" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (pointer_expression "*piVar9" * identifier)) ;) }) (else_clause "else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }" else (compound_statement "{\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }" { (expression_statement "local_44 = piVar9;" (assignment_expression "local_44 = piVar9" identifier = identifier) ;) (expression_statement "pFVar4 = fopen64((char *)*param_2,(char *)local_4c);" (assignment_expression "pFVar4 = fopen64((char *)*param_2,(char *)local_4c)" identifier = (call_expression "fopen64((char *)*param_2,(char *)local_4c)" identifier (argument_list "((char *)*param_2,(char *)local_4c)" ( (cast_expression "(char *)*param_2" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_2" * identifier)) , (cast_expression "(char *)local_4c" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "local_2c[(int)local_48] = (int)pFVar4;" (assignment_expression "local_2c[(int)local_48] = (int)pFVar4" (subscript_expression "local_2c[(int)local_48]" identifier [ (cast_expression "(int)local_48" ( (type_descriptor "int" primitive_type) ) identifier) ]) = (cast_expression "(int)pFVar4" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;" if (parenthesized_expression "(pFVar4 == (FILE *)0x0)" ( (binary_expression "pFVar4 == (FILE *)0x0" identifier == (cast_expression "(FILE *)0x0" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011e18;" goto statement_identifier ;)) (expression_statement "iVar10 = fileno(pFVar4);" (assignment_expression "iVar10 = fileno(pFVar4)" identifier = (call_expression "fileno(pFVar4)" identifier (argument_list "(pFVar4)" ( identifier )))) ;) (if_statement "if (iVar10 == 0) {\n          local_31 = '\x01';\n        }" if (parenthesized_expression "(iVar10 == 0)" ( (binary_expression "iVar10 == 0" identifier == number_literal) )) (compound_statement "{\n          local_31 = '\x01';\n        }" { (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) })) (expression_statement "FUN_000126a0();" (call_expression "FUN_000126a0()" identifier (argument_list "()" ( ))) ;) (expression_statement "piVar9 = local_44;" (assignment_expression "piVar9 = local_44" identifier = identifier) ;) }))) (expression_statement "local_48 = local_48 + 1;" (assignment_expression "local_48 = local_48 + 1" identifier = (binary_expression "local_48 + 1" identifier + number_literal)) ;) (expression_statement "param_2 = param_2 + 1;" (assignment_expression "param_2 = param_2 + 1" identifier = (binary_expression "param_2 + 1" identifier + number_literal)) ;) (expression_statement "bVar16 = param_1 < local_48;" (assignment_expression "bVar16 = param_1 < local_48" identifier = (binary_expression "param_1 < local_48" identifier < identifier)) ;) (expression_statement "bVar17 = param_1 == local_48;" (assignment_expression "bVar17 = param_1 == local_48" identifier = (binary_expression "param_1 == local_48" identifier == identifier)) ;) }) while (parenthesized_expression "(!bVar17)" ( (unary_expression "!bVar17" ! identifier) )) ;) (if_statement "if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" if (parenthesized_expression "(local_31 == '\0')" ( (binary_expression "local_31 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      local_31 = '\x01';\n    }" { (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }) (else_clause "else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" else (if_statement "if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" if (parenthesized_expression "(DAT_0001c171 != '\0')" ( (binary_expression "DAT_0001c171 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" { (expression_statement "dcgettext();" (call_expression "dcgettext()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar11 = &stack0xffffff94;" (assignment_expression "puVar11 = &stack0xffffff94" identifier = (pointer_expression "&stack0xffffff94" & identifier)) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;" statement_identifier : (expression_statement "*(undefined4 *)(puVar11 + -8) = *param_2;" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *param_2" (pointer_expression "*(undefined4 *)(puVar11 + -8)" * (cast_expression "(undefined4 *)(puVar11 + -8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -8)" ( (binary_expression "puVar11 + -8" identifier + number_literal) )))) = (pointer_expression "*param_2" * identifier)) ;)) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" * (cast_expression "(undefined4 *)(puVar11 + -0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0xc)" ( (binary_expression "puVar11 + -0xc" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar11 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar11 + -0x10)" * (cast_expression "(undefined4 *)(puVar11 + -0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x10)" ( (binary_expression "puVar11 + -0x10" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x11e27;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x11e27" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "uVar8 = FUN_00014440();" (assignment_expression "uVar8 = FUN_00014440()" identifier = (call_expression "FUN_00014440()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x11e2e;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x11e2e" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = number_literal) ;) (expression_statement "piVar9 = __errno_location();" (assignment_expression "piVar9 = __errno_location()" identifier = (call_expression "__errno_location()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = uVar8;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = uVar8" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" * (cast_expression "(undefined4 *)(puVar11 + -0x14)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x14)" ( (binary_expression "puVar11 + -0x14" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(char **)(puVar11 + -0x18) = "%s";" (assignment_expression "*(char **)(puVar11 + -0x18) = "%s"" (pointer_expression "*(char **)(puVar11 + -0x18)" * (cast_expression "(char **)(puVar11 + -0x18)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar11 + -0x18)" ( (binary_expression "puVar11 + -0x18" identifier + number_literal) )))) = (string_literal ""%s"" " string_content ")) ;) (expression_statement "*(int *)(puVar11 + -0x1c) = *piVar9;" (assignment_expression "*(int *)(puVar11 + -0x1c) = *piVar9" (pointer_expression "*(int *)(puVar11 + -0x1c)" * (cast_expression "(int *)(puVar11 + -0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x1c)" ( (binary_expression "puVar11 + -0x1c" identifier + number_literal) )))) = (pointer_expression "*piVar9" * identifier)) ;) (expression_statement "puVar12 = puVar11 + -0x20;" (assignment_expression "puVar12 = puVar11 + -0x20" identifier = (binary_expression "puVar11 + -0x20" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = 1;" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = 1" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" * (cast_expression "(undefined4 *)(puVar11 + -0x20)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x20)" ( (binary_expression "puVar11 + -0x20" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x11e3f;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x11e3f" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" * (cast_expression "(undefined4 *)(puVar11 + -0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + -0x24)" ( (binary_expression "puVar11 + -0x24" identifier + number_literal) )))) = number_literal) ;) (expression_statement "error();" (call_expression "error()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_00011e3f;" goto statement_identifier ;) })))) (expression_statement "local_28 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "local_28 = (int *)PTR_stdout_0001bfd4" identifier = (cast_expression "(int *)PTR_stdout_0001bfd4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_40 = local_48;" (assignment_expression "local_40 = local_48" identifier = identifier) ;) (expression_statement "local_20 = local_28;" (assignment_expression "local_20 = local_28" identifier = identifier) ;) (labeled_statement "LAB_000119d5:\n    local_4c = DAT_0001c16c;" statement_identifier : (expression_statement "local_4c = DAT_0001c16c;" (assignment_expression "local_4c = DAT_0001c16c" identifier = identifier) ;)) (expression_statement "local_50 = (byte *)0x1;" (assignment_expression "local_50 = (byte *)0x1" identifier = (cast_expression "(byte *)0x1" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "bVar16 = false;" (assignment_expression "bVar16 = false" identifier = false) ;) (expression_statement "local_44 = (int *)0x0;" (assignment_expression "local_44 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var6 = (_IO_FILE *)*local_2c;" (assignment_expression "p_Var6 = (_IO_FILE *)*local_2c" identifier = (cast_expression "(_IO_FILE *)*local_2c" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_2c" * identifier))) ;) (expression_statement "piVar9 = local_2c;" (assignment_expression "piVar9 = local_2c" identifier = identifier) ;) (if_statement "if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;" if (parenthesized_expression "(p_Var6 == (_IO_FILE *)0x0)" ( (binary_expression "p_Var6 == (_IO_FILE *)0x0" identifier == (cast_expression "(_IO_FILE *)0x0" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011b37;" goto statement_identifier ;)) (labeled_statement "LAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;" statement_identifier : (expression_statement "pbVar13 = (byte *)p_Var6->_IO_read_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_read_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_read_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier))) ;)) (if_statement "if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }" if (parenthesized_expression "(pbVar13 < p_Var6->_IO_read_end)" ( (binary_expression "pbVar13 < p_Var6->_IO_read_end" identifier < (field_expression "p_Var6->_IO_read_end" identifier -> field_identifier)) )) (compound_statement "{\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }" { (expression_statement "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar13 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar13 + 1)" ( (binary_expression "pbVar13 + 1" identifier + number_literal) )))) ;) (expression_statement "uVar7 = (uint)*pbVar13;" (assignment_expression "uVar7 = (uint)*pbVar13" identifier = (binary_expression "(uint)*pbVar13" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (if_statement "if (local_44 == (int *)0x0) goto LAB_00011a54;" if (parenthesized_expression "(local_44 == (int *)0x0)" ( (binary_expression "local_44 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011a54;" goto statement_identifier ;)) }) (else_clause "else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }" else (compound_statement "{\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }" { (expression_statement "local_30 = __uflow(p_Var6);" (assignment_expression "local_30 = __uflow(p_Var6)" identifier = (call_expression "__uflow(p_Var6)" identifier (argument_list "(p_Var6)" ( identifier )))) ;) (expression_statement "local_24 = (uint *)__errno_location();" (assignment_expression "local_24 = (uint *)__errno_location()" identifier = (cast_expression "(uint *)__errno_location()" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "__errno_location()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_3c = *local_24;" (assignment_expression "local_3c = *local_24" identifier = (pointer_expression "*local_24" * identifier)) ;) (expression_statement "uVar7 = local_30;" (assignment_expression "uVar7 = local_30" identifier = identifier) ;) (if_statement "if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }" if (parenthesized_expression "(local_30 == 0xffffffff || local_44 == (int *)0x0)" ( (binary_expression "local_30 == 0xffffffff || local_44 == (int *)0x0" (binary_expression "local_30 == 0xffffffff" identifier == number_literal) || (binary_expression "local_44 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }" { (if_statement "if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }" if (parenthesized_expression "(local_30 == 0xffffffff)" ( (binary_expression "local_30 == 0xffffffff" identifier == number_literal) )) (compound_statement "{\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }" { (if_statement "if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" if (parenthesized_expression "((p_Var6->_flags & 0x20) == 0)" ( (binary_expression "(p_Var6->_flags & 0x20) == 0" (parenthesized_expression "(p_Var6->_flags & 0x20)" ( (binary_expression "p_Var6->_flags & 0x20" (field_expression "p_Var6->_flags" identifier -> field_identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" { (expression_statement "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;" (assignment_expression "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0" identifier = (pointer_expression "*(_IO_FILE **)PTR_stdin_0001bfd0" * (cast_expression "(_IO_FILE **)PTR_stdin_0001bfd0" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) }) (else_clause "else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" else (compound_statement "{\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" { (expression_statement "uVar8 = FUN_00014440();" (assignment_expression "uVar8 = FUN_00014440()" identifier = (call_expression "FUN_00014440()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,local_3c,"%s",uVar8);" (call_expression "error(0,local_3c,"%s",uVar8)" identifier (argument_list "(0,local_3c,"%s",uVar8)" ( number_literal , identifier , (string_literal ""%s"" " string_content ") , identifier ))) ;) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;" (assignment_expression "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0" identifier = (pointer_expression "*(_IO_FILE **)PTR_stdin_0001bfd0" * (cast_expression "(_IO_FILE **)PTR_stdin_0001bfd0" ( (type_descriptor "_IO_FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) }))) (if_statement "if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }" if (parenthesized_expression "(p_Var6 == p_Var1)" ( (binary_expression "p_Var6 == p_Var1" identifier == identifier) )) (compound_statement "{\n            clearerr_unlocked(p_Var6);\n          }" { (expression_statement "clearerr_unlocked(p_Var6);" (call_expression "clearerr_unlocked(p_Var6)" identifier (argument_list "(p_Var6)" ( identifier ))) ;) }) (else_clause "else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }" else (compound_statement "{\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }" { (expression_statement "iVar10 = FUN_00014ff0();" (assignment_expression "iVar10 = FUN_00014ff0()" identifier = (call_expression "FUN_00014ff0()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }" if (parenthesized_expression "(iVar10 == -1)" ( (binary_expression "iVar10 == -1" identifier == number_literal) )) (compound_statement "{\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }" { (expression_statement "uVar8 = FUN_00014440();" (assignment_expression "uVar8 = FUN_00014440()" identifier = (call_expression "FUN_00014440()" identifier (argument_list "()" ( )))) ;) (expression_statement "error(0,*local_24,"%s",uVar8);" (call_expression "error(0,*local_24,"%s",uVar8)" identifier (argument_list "(0,*local_24,"%s",uVar8)" ( number_literal , (pointer_expression "*local_24" * identifier) , (string_literal ""%s"" " string_content ") , identifier ))) ;) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) })) }))) (expression_statement "*piVar9 = 0;" (assignment_expression "*piVar9 = 0" (pointer_expression "*piVar9" * identifier) = number_literal) ;) (expression_statement "local_40 = local_40 + -1;" (assignment_expression "local_40 = local_40 + -1" identifier = (binary_expression "local_40 + -1" identifier + number_literal)) ;) (goto_statement "goto LAB_00011b37;" goto statement_identifier ;) })) (goto_statement "goto LAB_00011a54;" goto statement_identifier ;) })) }))) (expression_statement "piVar3 = local_44;" (assignment_expression "piVar3 = local_44" identifier = identifier) ;) (expression_statement "piVar14 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "piVar14 = (int *)PTR_stdout_0001bfd4" identifier = (cast_expression "(int *)PTR_stdout_0001bfd4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "local_3c = uVar7;" (assignment_expression "local_3c = uVar7" identifier = identifier) ;) (expression_statement "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);" (assignment_expression "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" identifier = (cast_expression "(int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" identifier (argument_list "(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" ( identifier , number_literal , (cast_expression "(size_t)local_44" ( (type_descriptor "size_t" primitive_type) ) identifier) , (pointer_expression "*(FILE **)PTR_stdout_0001bfd4" * (cast_expression "(FILE **)PTR_stdout_0001bfd4" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ))))) ;) (if_statement "if (piVar5 != piVar3) goto LAB_00011ab9;" if (parenthesized_expression "(piVar5 != piVar3)" ( (binary_expression "piVar5 != piVar3" identifier != identifier) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) (expression_statement "local_44 = (int *)0x0;" (assignment_expression "local_44 = (int *)0x0" identifier = (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uVar7 = local_3c;" (assignment_expression "uVar7 = local_3c" identifier = identifier) ;) (labeled_statement "LAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;" statement_identifier : (expression_statement "piVar14 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "piVar14 = (int *)PTR_stdout_0001bfd4" identifier = (cast_expression "(int *)PTR_stdout_0001bfd4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (if_statement "if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }" if (parenthesized_expression "(uVar7 == DAT_0001c0e8)" ( (binary_expression "uVar7 == DAT_0001c0e8" identifier == identifier) )) (compound_statement "{\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }" { (expression_statement "piVar14 = local_20;" (assignment_expression "piVar14 = local_20" identifier = identifier) ;) (if_statement "if (local_48 != local_50) goto LAB_00011ae1;" if (parenthesized_expression "(local_48 != local_50)" ( (binary_expression "local_48 != local_50" identifier != identifier) )) (goto_statement "goto LAB_00011ae1;" goto statement_identifier ;)) (goto_statement "goto LAB_00011b8e;" goto statement_identifier ;) })) (ERROR "do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    \n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();" do (compound_statement "{\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }" { (expression_statement "p_Var6 = (_IO_FILE *)*piVar14;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar14" identifier = (cast_expression "(_IO_FILE *)*piVar14" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) (expression_statement "pcVar2 = p_Var6->_IO_write_ptr;" (assignment_expression "pcVar2 = p_Var6->_IO_write_ptr" identifier = (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier)) ;) (if_statement "if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }" if (parenthesized_expression "(pcVar2 < p_Var6->_IO_write_end)" ( (binary_expression "pcVar2 < p_Var6->_IO_write_end" identifier < (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }" { (expression_statement "p_Var6->_IO_write_ptr = pcVar2 + 1;" (assignment_expression "p_Var6->_IO_write_ptr = pcVar2 + 1" (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier) = (binary_expression "pcVar2 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar2 = (char)uVar7;" (assignment_expression "*pcVar2 = (char)uVar7" (pointer_expression "*pcVar2" * identifier) = (cast_expression "(char)uVar7" ( (type_descriptor "char" primitive_type) ) identifier)) ;) }) (else_clause "else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }" else (compound_statement "{\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }" { (expression_statement "iVar10 = __overflow(p_Var6,uVar7 & 0xff);" (assignment_expression "iVar10 = __overflow(p_Var6,uVar7 & 0xff)" identifier = (call_expression "__overflow(p_Var6,uVar7 & 0xff)" identifier (argument_list "(p_Var6,uVar7 & 0xff)" ( identifier , (binary_expression "uVar7 & 0xff" identifier & number_literal) )))) ;) (if_statement "if (iVar10 < 0) goto LAB_00011ab9;" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) }))) (expression_statement "p_Var6 = (_IO_FILE *)*piVar9;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar9" identifier = (cast_expression "(_IO_FILE *)*piVar9" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar9" * identifier))) ;) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_read_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_read_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_read_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier))) ;) (if_statement "if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;" if (parenthesized_expression "(p_Var6->_IO_read_end <= pbVar13)" ( (binary_expression "p_Var6->_IO_read_end <= pbVar13" (field_expression "p_Var6->_IO_read_end" identifier -> field_identifier) <= identifier) )) (goto_statement "goto LAB_00011ac0;" goto statement_identifier ;)) (expression_statement "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_read_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar13 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar13 + 1)" ( (binary_expression "pbVar13 + 1" identifier + number_literal) )))) ;) (expression_statement "uVar7 = (uint)*pbVar13;" (assignment_expression "uVar7 = (uint)*pbVar13" identifier = (binary_expression "(uint)*pbVar13" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (labeled_statement "LAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);" statement_identifier : (ERROR "}" }) (while_statement "while (DAT_0001c0e8 != uVar7);" while (parenthesized_expression "(DAT_0001c0e8 != uVar7)" ( (binary_expression "DAT_0001c0e8 != uVar7" identifier != identifier) )) (expression_statement ";" ;))) (if_statement "if (local_48 != local_50) goto LAB_00011ae1;" if (parenthesized_expression "(local_48 != local_50)" ( (binary_expression "local_48 != local_50" identifier != identifier) )) (goto_statement "goto LAB_00011ae1;" goto statement_identifier ;)) (labeled_statement "LAB_00011b8e:\n    bVar18 = (byte)uVar7;" statement_identifier : (expression_statement "bVar18 = (byte)uVar7;" (assignment_expression "bVar18 = (byte)uVar7" identifier = (cast_expression "(byte)uVar7" ( (type_descriptor "byte" type_identifier) ) identifier)) ;)) (expression_statement "p_Var6 = (_IO_FILE *)*piVar14;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar14" identifier = (cast_expression "(_IO_FILE *)*piVar14" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_write_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier))) ;) (if_statement "if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;" if (parenthesized_expression "(pbVar13 < p_Var6->_IO_write_end)" ( (binary_expression "pbVar13 < p_Var6->_IO_write_end" identifier < (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier)) )) (goto_statement "goto LAB_00011b9c;" goto statement_identifier ;)) (labeled_statement "LAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);" statement_identifier : (expression_statement "iVar10 = __overflow(p_Var6,uVar7 & 0xff);" (assignment_expression "iVar10 = __overflow(p_Var6,uVar7 & 0xff)" identifier = (call_expression "__overflow(p_Var6,uVar7 & 0xff)" identifier (argument_list "(p_Var6,uVar7 & 0xff)" ( identifier , (binary_expression "uVar7 & 0xff" identifier & number_literal) )))) ;)) (if_statement "if (-1 < iVar10) goto LAB_00011ba4;" if (parenthesized_expression "(-1 < iVar10)" ( (binary_expression "-1 < iVar10" number_literal < identifier) )) (goto_statement "goto LAB_00011ba4;" goto statement_identifier ;)) (labeled_statement "LAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );" statement_identifier : (do_statement "do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );" do (compound_statement "{\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    }" { (expression_statement "p_Var6 = (_IO_FILE *)FUN_00011830();" (assignment_expression "p_Var6 = (_IO_FILE *)FUN_00011830()" identifier = (cast_expression "(_IO_FILE *)FUN_00011830()" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00011830()" identifier (argument_list "()" ( ))))) ;) (labeled_statement "LAB_00011ac0:\n      uVar7 = __uflow(p_Var6);" statement_identifier : (expression_statement "uVar7 = __uflow(p_Var6);" (assignment_expression "uVar7 = __uflow(p_Var6)" identifier = (call_expression "__uflow(p_Var6)" identifier (argument_list "(p_Var6)" ( identifier )))) ;)) (if_statement "if (uVar7 != 0xffffffff) goto LAB_00011a8c;" if (parenthesized_expression "(uVar7 != 0xffffffff)" ( (binary_expression "uVar7 != 0xffffffff" identifier != number_literal) )) (goto_statement "goto LAB_00011a8c;" goto statement_identifier ;)) (if_statement "if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }" if (parenthesized_expression "(local_48 == local_50)" ( (binary_expression "local_48 == local_50" identifier == identifier) )) (compound_statement "{\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }" { (expression_statement "p_Var6 = (_IO_FILE *)*piVar14;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar14" identifier = (cast_expression "(_IO_FILE *)*piVar14" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) (expression_statement "uVar7 = (uint)DAT_0001c0e8;" (assignment_expression "uVar7 = (uint)DAT_0001c0e8" identifier = (cast_expression "(uint)DAT_0001c0e8" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_write_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier))) ;) (expression_statement "bVar18 = DAT_0001c0e8;" (assignment_expression "bVar18 = DAT_0001c0e8" identifier = identifier) ;) (if_statement "if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }" if (parenthesized_expression "(pbVar13 < p_Var6->_IO_write_end)" ( (binary_expression "pbVar13 < p_Var6->_IO_write_end" identifier < (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }" { (labeled_statement "LAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);" statement_identifier : (expression_statement "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar13 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar13 + 1)" ( (binary_expression "pbVar13 + 1" identifier + number_literal) )))) ;)) (expression_statement "*pbVar13 = bVar18;" (assignment_expression "*pbVar13 = bVar18" (pointer_expression "*pbVar13" * identifier) = identifier) ;) (labeled_statement "LAB_00011ba4:\n          bVar16 = true;" statement_identifier : (expression_statement "bVar16 = true;" (assignment_expression "bVar16 = true" identifier = true) ;)) (goto_statement "goto LAB_00011b06;" goto statement_identifier ;) })) (goto_statement "goto LAB_00011c45;" goto statement_identifier ;) })) (labeled_statement "LAB_00011ae1:\n      piVar14 = local_28;" statement_identifier : (expression_statement "piVar14 = local_28;" (assignment_expression "piVar14 = local_28" identifier = identifier) ;)) (expression_statement "bVar18 = *local_4c;" (assignment_expression "bVar18 = *local_4c" identifier = (pointer_expression "*local_4c" * identifier)) ;) (if_statement "if (bVar18 == 0) goto LAB_00011af0;" if (parenthesized_expression "(bVar18 == 0)" ( (binary_expression "bVar18 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00011af0;" goto statement_identifier ;)) (expression_statement "p_Var6 = (_IO_FILE *)*local_28;" (assignment_expression "p_Var6 = (_IO_FILE *)*local_28" identifier = (cast_expression "(_IO_FILE *)*local_28" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*local_28" * identifier))) ;) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_write_ptr" identifier = (cast_expression "(byte *)p_Var6->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier))) ;) (if_statement "if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }" if (parenthesized_expression "(pbVar13 < p_Var6->_IO_write_end)" ( (binary_expression "pbVar13 < p_Var6->_IO_write_end" identifier < (field_expression "p_Var6->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }" { (expression_statement "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar13 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar13 + 1)" ( (binary_expression "pbVar13 + 1" identifier + number_literal) )))) ;) (expression_statement "*pbVar13 = bVar18;" (assignment_expression "*pbVar13 = bVar18" (pointer_expression "*pbVar13" * identifier) = identifier) ;) (goto_statement "goto LAB_00011af0;" goto statement_identifier ;) })) (expression_statement "iVar10 = __overflow(p_Var6,(uint)bVar18);" (assignment_expression "iVar10 = __overflow(p_Var6,(uint)bVar18)" identifier = (call_expression "__overflow(p_Var6,(uint)bVar18)" identifier (argument_list "(p_Var6,(uint)bVar18)" ( identifier , (cast_expression "(uint)bVar18" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (if_statement "if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }" if (parenthesized_expression "(-1 < iVar10)" ( (binary_expression "-1 < iVar10" number_literal < identifier) )) (compound_statement "{\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }" { (labeled_statement "LAB_00011af0:\n        local_4c = local_4c + 1;" statement_identifier : (expression_statement "local_4c = local_4c + 1;" (assignment_expression "local_4c = local_4c + 1" identifier = (binary_expression "local_4c + 1" identifier + number_literal)) ;)) (expression_statement "bVar16 = true;" (assignment_expression "bVar16 = true" identifier = true) ;) (if_statement "if (DAT_0001c168 == local_4c) goto LAB_00011b6f;" if (parenthesized_expression "(DAT_0001c168 == local_4c)" ( (binary_expression "DAT_0001c168 == local_4c" identifier == identifier) )) (goto_statement "goto LAB_00011b6f;" goto statement_identifier ;)) (labeled_statement "LAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }" statement_identifier : (while_statement "while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }" { (expression_statement "pbVar13 = local_50 + 1;" (assignment_expression "pbVar13 = local_50 + 1" identifier = (binary_expression "local_50 + 1" identifier + number_literal)) ;) (expression_statement "piVar9 = piVar9 + 1;" (assignment_expression "piVar9 = piVar9 + 1" identifier = (binary_expression "piVar9 + 1" identifier + number_literal)) ;) (expression_statement "bVar17 = local_48 <= local_50;" (assignment_expression "bVar17 = local_48 <= local_50" identifier = (binary_expression "local_48 <= local_50" identifier <= identifier)) ;) (expression_statement "local_50 = pbVar13;" (assignment_expression "local_50 = pbVar13" identifier = identifier) ;) (if_statement "if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;" if (parenthesized_expression "(bVar17 || local_40 == (byte *)0x0)" ( (binary_expression "bVar17 || local_40 == (byte *)0x0" identifier || (binary_expression "local_40 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (goto_statement "goto LAB_00011bf9;" goto statement_identifier ;)) (expression_statement "p_Var6 = (_IO_FILE *)*piVar9;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar9" identifier = (cast_expression "(_IO_FILE *)*piVar9" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar9" * identifier))) ;) (if_statement "if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;" if (parenthesized_expression "(p_Var6 != (_IO_FILE *)0x0)" ( (binary_expression "p_Var6 != (_IO_FILE *)0x0" identifier != (cast_expression "(_IO_FILE *)0x0" ( (type_descriptor "_IO_FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011a08;" goto statement_identifier ;)) (labeled_statement "LAB_00011b37:\n          piVar3 = local_44;" statement_identifier : (expression_statement "piVar3 = local_44;" (assignment_expression "piVar3 = local_44" identifier = identifier) ;)) (expression_statement "piVar14 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "piVar14 = (int *)PTR_stdout_0001bfd4" identifier = (cast_expression "(int *)PTR_stdout_0001bfd4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (if_statement "if (local_48 == local_50) break;" if (parenthesized_expression "(local_48 == local_50)" ( (binary_expression "local_48 == local_50" identifier == identifier) )) (break_statement "break;" break ;)) (if_statement "if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }" if (parenthesized_expression "(*local_4c != 0)" ( (binary_expression "*local_4c != 0" (pointer_expression "*local_4c" * identifier) != number_literal) )) (compound_statement "{\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }" { (expression_statement "*(byte *)((int)local_38 + (int)local_44) = *local_4c;" (assignment_expression "*(byte *)((int)local_38 + (int)local_44) = *local_4c" (pointer_expression "*(byte *)((int)local_38 + (int)local_44)" * (cast_expression "(byte *)((int)local_38 + (int)local_44)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_38 + (int)local_44)" ( (binary_expression "(int)local_38 + (int)local_44" (cast_expression "(int)local_38" ( (type_descriptor "int" primitive_type) ) identifier) + (cast_expression "(int)local_44" ( (type_descriptor "int" primitive_type) ) identifier)) )))) = (pointer_expression "*local_4c" * identifier)) ;) (expression_statement "local_44 = (int *)((int)local_44 + 1);" (assignment_expression "local_44 = (int *)((int)local_44 + 1)" identifier = (cast_expression "(int *)((int)local_44 + 1)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)local_44 + 1)" ( (binary_expression "(int)local_44 + 1" (cast_expression "(int)local_44" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) ;) })) (expression_statement "local_4c = local_4c + 1;" (assignment_expression "local_4c = local_4c + 1" identifier = (binary_expression "local_4c + 1" identifier + number_literal)) ;) (if_statement "if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }" if (parenthesized_expression "(DAT_0001c168 == local_4c)" ( (binary_expression "DAT_0001c168 == local_4c" identifier == identifier) )) (compound_statement "{\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }" { (labeled_statement "LAB_00011b6f:\n            local_4c = DAT_0001c16c;" statement_identifier : (expression_statement "local_4c = DAT_0001c16c;" (assignment_expression "local_4c = DAT_0001c16c" identifier = identifier) ;)) })) }))) (if_statement "if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }" if (parenthesized_expression "(bVar16)" ( identifier )) (compound_statement "{\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }" { (expression_statement "pFVar4 = *(FILE **)PTR_stdout_0001bfd4;" (assignment_expression "pFVar4 = *(FILE **)PTR_stdout_0001bfd4" identifier = (pointer_expression "*(FILE **)PTR_stdout_0001bfd4" * (cast_expression "(FILE **)PTR_stdout_0001bfd4" ( (type_descriptor "FILE **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (if_statement "if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }" if (parenthesized_expression "(local_44 != (int *)0x0)" ( (binary_expression "local_44 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }" { (expression_statement "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);" (assignment_expression "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4)" identifier = (cast_expression "(int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4)" identifier (argument_list "(local_38,1,(size_t)local_44,pFVar4)" ( identifier , number_literal , (cast_expression "(size_t)local_44" ( (type_descriptor "size_t" primitive_type) ) identifier) , identifier ))))) ;) (if_statement "if (piVar5 != piVar3) goto LAB_00011ab9;" if (parenthesized_expression "(piVar5 != piVar3)" ( (binary_expression "piVar5 != piVar3" identifier != identifier) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) (expression_statement "pFVar4 = (FILE *)*piVar14;" (assignment_expression "pFVar4 = (FILE *)*piVar14" identifier = (cast_expression "(FILE *)*piVar14" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar14" * identifier))) ;) })) (expression_statement "bVar18 = DAT_0001c0e8;" (assignment_expression "bVar18 = DAT_0001c0e8" identifier = identifier) ;) (expression_statement "pbVar13 = (byte *)pFVar4->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)pFVar4->_IO_write_ptr" identifier = (cast_expression "(byte *)pFVar4->_IO_write_ptr" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "pFVar4->_IO_write_ptr" identifier -> field_identifier))) ;) (if_statement "if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }" if (parenthesized_expression "(pbVar13 < pFVar4->_IO_write_end)" ( (binary_expression "pbVar13 < pFVar4->_IO_write_end" identifier < (field_expression "pFVar4->_IO_write_end" identifier -> field_identifier)) )) (compound_statement "{\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }" { (expression_statement "pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);" (assignment_expression "pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1)" (field_expression "pFVar4->_IO_write_ptr" identifier -> field_identifier) = (cast_expression "(char *)(pbVar13 + 1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar13 + 1)" ( (binary_expression "pbVar13 + 1" identifier + number_literal) )))) ;) (expression_statement "*pbVar13 = bVar18;" (assignment_expression "*pbVar13 = bVar18" (pointer_expression "*pbVar13" * identifier) = identifier) ;) }) (else_clause "else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }" else (compound_statement "{\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }" { (expression_statement "iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);" (assignment_expression "iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8)" identifier = (call_expression "__overflow(pFVar4,(uint)DAT_0001c0e8)" identifier (argument_list "(pFVar4,(uint)DAT_0001c0e8)" ( identifier , (cast_expression "(uint)DAT_0001c0e8" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (if_statement "if (iVar10 < 0) goto LAB_00011ab9;" if (parenthesized_expression "(iVar10 < 0)" ( (binary_expression "iVar10 < 0" identifier < number_literal) )) (goto_statement "goto LAB_00011ab9;" goto statement_identifier ;)) }))) })) (labeled_statement "LAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;" statement_identifier : (if_statement "if (local_40 == (byte *)0x0) goto LAB_00011c05;" if (parenthesized_expression "(local_40 == (byte *)0x0)" ( (binary_expression "local_40 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00011c05;" goto statement_identifier ;))) (goto_statement "goto LAB_000119d5;" goto statement_identifier ;) })) }) while (parenthesized_expression "( true )" ( true )) ;)) }) identifier : * ( identifier * * ) ( identifier + number_literal ) = & identifier ; identifier ( ) ;) })) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE (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 (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 IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (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 (pointer_declarator * IDENT) ;) (declaration TYPE 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 IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))) * LIT)) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT + LIT) ))) >> LIT) == LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (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 *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) < (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * IDENT) == (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) + LIT)) ;) }) while (parenthesized_expression ( IDENT )) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (unary_expression ! IDENT) && (unary_expression ! IDENT)) )) == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = (pointer_expression * IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ (cast_expression ( (type_descriptor TYPE) ) IDENT) ]) = (cast_expression ( (type_descriptor TYPE) ) 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 = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT < IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT == IDENT)) ;) }) while (parenthesized_expression ( (unary_expression ! IDENT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (string_literal " string_content ")) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) (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 *)) ) (pointer_expression * 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 ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT -> field_identifier))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (field_expression IDENT -> field_identifier)) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT -> field_identifier) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (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 ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || (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 { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (field_expression IDENT -> field_identifier) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT , (string_literal " string_content ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , (pointer_expression * IDENT) , (string_literal " string_content ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) })) }))) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , LIT , (cast_expression ( (type_descriptor TYPE) ) IDENT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (ERROR do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (field_expression IDENT -> field_identifier)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (field_expression IDENT -> field_identifier)) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT -> field_identifier) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT & LIT) )))) ;) (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 *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT -> field_identifier))) ;) (if_statement if (parenthesized_expression ( (binary_expression (field_expression IDENT -> field_identifier) <= IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (field_expression IDENT -> field_identifier) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( IDENT )) * IDENT)) ;) (labeled_statement statement_identifier : (ERROR }) (while_statement while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (expression_statement ;))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT -> field_identifier))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (field_expression IDENT -> field_identifier)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT & LIT) )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT -> field_identifier))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (field_expression IDENT -> field_identifier)) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (field_expression IDENT -> field_identifier) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = BOOL) ;)) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * 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 *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT -> field_identifier))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (field_expression IDENT -> field_identifier)) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT -> field_identifier) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = BOOL) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (while_statement while (parenthesized_expression ( BOOL )) (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 = (binary_expression IDENT <= IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT || (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * 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 = IDENT) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (break_statement break ;)) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (cast_expression ( (type_descriptor TYPE) ) IDENT)) )))) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) })) }))) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) 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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , LIT , (cast_expression ( (type_descriptor TYPE) ) IDENT) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (field_expression IDENT -> field_identifier))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (field_expression IDENT -> field_identifier)) )) (compound_statement { (expression_statement (assignment_expression (field_expression IDENT -> field_identifier) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) }))) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;))) (goto_statement goto statement_identifier ;) })) }) while (parenthesized_expression ( BOOL )) ;)) }) IDENT : * ( IDENT * * ) ( IDENT + LIT ) = & IDENT ; IDENT ( ) ;) })) })))
(function_definition "char FUN_00011870(byte *param_1,undefined4 *param_2)\n\n{\n  _IO_FILE *p_Var1;\n  char *pcVar2;\n  int *piVar3;\n  FILE *pFVar4;\n  int *piVar5;\n  _IO_FILE *p_Var6;\n  uint uVar7;\n  undefined4 uVar8;\n  int *piVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  byte *pbVar13;\n  int *piVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  undefined1 auStack_5c [12];\n  byte *local_50;\n  byte *local_4c;\n  byte *local_48;\n  int *local_44;\n  byte *local_40;\n  uint local_3c;\n  void *local_38;\n  char local_31;\n  uint local_30;\n  int *local_2c;\n  int *local_28;\n  uint *local_24;\n  int *local_20;\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x11879;\n  local_38 = (void *)FUN_00014cb0();\n  puVar12 = auStack_5c;\n  if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    \n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" (primitive_type "char") (function_declarator "FUN_00011870(byte *param_1,undefined4 *param_2)" (identifier "FUN_00011870") (parameter_list "(byte *param_1,undefined4 *param_2)" (( "(") (parameter_declaration "byte *param_1" (type_identifier "byte") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "undefined4 *param_2" (type_identifier "undefined4") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")"))) (compound_statement "{\n  _IO_FILE *p_Var1;\n  char *pcVar2;\n  int *piVar3;\n  FILE *pFVar4;\n  int *piVar5;\n  _IO_FILE *p_Var6;\n  uint uVar7;\n  undefined4 uVar8;\n  int *piVar9;\n  int iVar10;\n  undefined1 *puVar11;\n  undefined1 *puVar12;\n  byte *pbVar13;\n  int *piVar14;\n  byte *pbVar15;\n  bool bVar16;\n  bool bVar17;\n  byte bVar18;\n  undefined1 auStack_5c [12];\n  byte *local_50;\n  byte *local_4c;\n  byte *local_48;\n  int *local_44;\n  byte *local_40;\n  uint local_3c;\n  void *local_38;\n  char local_31;\n  uint local_30;\n  int *local_2c;\n  int *local_28;\n  uint *local_24;\n  int *local_20;\n  undefined4 uStack_14;\n  \n  bVar18 = 0;\n  uStack_14 = 0x11879;\n  local_38 = (void *)FUN_00014cb0();\n  puVar12 = auStack_5c;\n  if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    \n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" ({ "{") (declaration "_IO_FILE *p_Var1;" (type_identifier "_IO_FILE") (pointer_declarator "*p_Var1" (* "*") (identifier "p_Var1")) (; ";")) (declaration "char *pcVar2;" (primitive_type "char") (pointer_declarator "*pcVar2" (* "*") (identifier "pcVar2")) (; ";")) (declaration "int *piVar3;" (primitive_type "int") (pointer_declarator "*piVar3" (* "*") (identifier "piVar3")) (; ";")) (declaration "FILE *pFVar4;" (type_identifier "FILE") (pointer_declarator "*pFVar4" (* "*") (identifier "pFVar4")) (; ";")) (declaration "int *piVar5;" (primitive_type "int") (pointer_declarator "*piVar5" (* "*") (identifier "piVar5")) (; ";")) (declaration "_IO_FILE *p_Var6;" (type_identifier "_IO_FILE") (pointer_declarator "*p_Var6" (* "*") (identifier "p_Var6")) (; ";")) (declaration "uint uVar7;" (type_identifier "uint") (identifier "uVar7") (; ";")) (declaration "undefined4 uVar8;" (type_identifier "undefined4") (identifier "uVar8") (; ";")) (declaration "int *piVar9;" (primitive_type "int") (pointer_declarator "*piVar9" (* "*") (identifier "piVar9")) (; ";")) (declaration "int iVar10;" (primitive_type "int") (identifier "iVar10") (; ";")) (declaration "undefined1 *puVar11;" (type_identifier "undefined1") (pointer_declarator "*puVar11" (* "*") (identifier "puVar11")) (; ";")) (declaration "undefined1 *puVar12;" (type_identifier "undefined1") (pointer_declarator "*puVar12" (* "*") (identifier "puVar12")) (; ";")) (declaration "byte *pbVar13;" (type_identifier "byte") (pointer_declarator "*pbVar13" (* "*") (identifier "pbVar13")) (; ";")) (declaration "int *piVar14;" (primitive_type "int") (pointer_declarator "*piVar14" (* "*") (identifier "piVar14")) (; ";")) (declaration "byte *pbVar15;" (type_identifier "byte") (pointer_declarator "*pbVar15" (* "*") (identifier "pbVar15")) (; ";")) (declaration "bool bVar16;" (primitive_type "bool") (identifier "bVar16") (; ";")) (declaration "bool bVar17;" (primitive_type "bool") (identifier "bVar17") (; ";")) (declaration "byte bVar18;" (type_identifier "byte") (identifier "bVar18") (; ";")) (declaration "undefined1 auStack_5c [12];" (type_identifier "undefined1") (array_declarator "auStack_5c [12]" (identifier "auStack_5c") ([ "[") (number_literal "12") (] "]")) (; ";")) (declaration "byte *local_50;" (type_identifier "byte") (pointer_declarator "*local_50" (* "*") (identifier "local_50")) (; ";")) (declaration "byte *local_4c;" (type_identifier "byte") (pointer_declarator "*local_4c" (* "*") (identifier "local_4c")) (; ";")) (declaration "byte *local_48;" (type_identifier "byte") (pointer_declarator "*local_48" (* "*") (identifier "local_48")) (; ";")) (declaration "int *local_44;" (primitive_type "int") (pointer_declarator "*local_44" (* "*") (identifier "local_44")) (; ";")) (declaration "byte *local_40;" (type_identifier "byte") (pointer_declarator "*local_40" (* "*") (identifier "local_40")) (; ";")) (declaration "uint local_3c;" (type_identifier "uint") (identifier "local_3c") (; ";")) (declaration "void *local_38;" (primitive_type "void") (pointer_declarator "*local_38" (* "*") (identifier "local_38")) (; ";")) (declaration "char local_31;" (primitive_type "char") (identifier "local_31") (; ";")) (declaration "uint local_30;" (type_identifier "uint") (identifier "local_30") (; ";")) (declaration "int *local_2c;" (primitive_type "int") (pointer_declarator "*local_2c" (* "*") (identifier "local_2c")) (; ";")) (declaration "int *local_28;" (primitive_type "int") (pointer_declarator "*local_28" (* "*") (identifier "local_28")) (; ";")) (declaration "uint *local_24;" (type_identifier "uint") (pointer_declarator "*local_24" (* "*") (identifier "local_24")) (; ";")) (declaration "int *local_20;" (primitive_type "int") (pointer_declarator "*local_20" (* "*") (identifier "local_20")) (; ";")) (declaration "undefined4 uStack_14;" (type_identifier "undefined4") (identifier "uStack_14") (; ";")) (expression_statement "bVar18 = 0;" (assignment_expression "bVar18 = 0" (identifier "bVar18") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_14 = 0x11879;" (assignment_expression "uStack_14 = 0x11879" (identifier "uStack_14") (= "=") (number_literal "0x11879")) (; ";")) (expression_statement "local_38 = (void *)FUN_00014cb0();" (assignment_expression "local_38 = (void *)FUN_00014cb0()" (identifier "local_38") (= "=") (cast_expression "(void *)FUN_00014cb0()" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00014cb0()" (identifier "FUN_00014cb0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "puVar12 = auStack_5c;" (assignment_expression "puVar12 = auStack_5c" (identifier "puVar12") (= "=") (identifier "auStack_5c")) (; ";")) (if_statement "if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    \n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" (if "if") (parenthesized_expression "((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0))" (( "(") (binary_expression "(-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)" (parenthesized_expression "(-1 < (int)(param_1 + 1) * 4)" (( "(") (binary_expression "-1 < (int)(param_1 + 1) * 4" (number_literal "-1") (< "<") (binary_expression "(int)(param_1 + 1) * 4" (cast_expression "(int)(param_1 + 1)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(param_1 + 1)" (( "(") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1")) () ")"))) (* "*") (number_literal "4"))) () ")")) (&& "&&") (parenthesized_expression "(puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)" (( "(") (comma_expression "puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0" (assignment_expression "puVar12 = auStack_5c" (identifier "puVar12") (= "=") (identifier "auStack_5c")) (, ",") (binary_expression "(uint)(param_1 + 1) >> 0x1e == 0" (binary_expression "(uint)(param_1 + 1) >> 0x1e" (call_expression "(uint)(param_1 + 1)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(param_1 + 1)" (( "(") (binary_expression "param_1 + 1" (identifier "param_1") (+ "+") (number_literal "1")) () ")"))) (>> ">>") (number_literal "0x1e")) (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n    local_2c = (int *)FUN_00014cb0();\n    puVar11 = auStack_5c;\n    bVar16 = false;\n    bVar17 = param_1 == (byte *)0x0;\n    if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }\n    local_50 = &DAT_000180ad;\n    local_31 = '\0';\n    local_4c = (byte *)0x17012;\n    local_48 = (byte *)0x0;\n    piVar9 = (int *)PTR_stdin_0001bfd0;\n    do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);\n    if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }\n    local_28 = (int *)PTR_stdout_0001bfd4;\n    local_40 = local_48;\n    local_20 = local_28;\nLAB_000119d5:\n    local_4c = DAT_0001c16c;\n    local_50 = (byte *)0x1;\n    bVar16 = false;\n    local_44 = (int *)0x0;\n    p_Var6 = (_IO_FILE *)*local_2c;\n    piVar9 = local_2c;\n    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;\nLAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n    if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }\n    piVar3 = local_44;\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    local_3c = uVar7;\n    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);\n    if (piVar5 != piVar3) goto LAB_00011ab9;\n    local_44 = (int *)0x0;\n    uVar7 = local_3c;\nLAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;\n    if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }\n    do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    \n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();\n}" ({ "{") (expression_statement "local_2c = (int *)FUN_00014cb0();" (assignment_expression "local_2c = (int *)FUN_00014cb0()" (identifier "local_2c") (= "=") (cast_expression "(int *)FUN_00014cb0()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00014cb0()" (identifier "FUN_00014cb0") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "puVar11 = auStack_5c;" (assignment_expression "puVar11 = auStack_5c" (identifier "puVar11") (= "=") (identifier "auStack_5c")) (; ";")) (expression_statement "bVar16 = false;" (assignment_expression "bVar16 = false" (identifier "bVar16") (= "=") (false "false")) (; ";")) (expression_statement "bVar17 = param_1 == (byte *)0x0;" (assignment_expression "bVar17 = param_1 == (byte *)0x0" (identifier "bVar17") (= "=") (binary_expression "param_1 == (byte *)0x0" (identifier "param_1") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) (; ";")) (if_statement "if (bVar17) {\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }" (if "if") (parenthesized_expression "(bVar17)" (( "(") (identifier "bVar17") () ")")) (compound_statement "{\n      local_31 = '\x01';\nLAB_00011c05:\n      free(local_2c);\n      free(local_38);\n      return local_31;\n    }" ({ "{") (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" (identifier "local_31") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (labeled_statement "LAB_00011c05:\n      free(local_2c);" (statement_identifier "LAB_00011c05") (: ":") (expression_statement "free(local_2c);" (call_expression "free(local_2c)" (identifier "free") (argument_list "(local_2c)" (( "(") (identifier "local_2c") () ")"))) (; ";"))) (expression_statement "free(local_38);" (call_expression "free(local_38)" (identifier "free") (argument_list "(local_38)" (( "(") (identifier "local_38") () ")"))) (; ";")) (return_statement "return local_31;" (return "return") (identifier "local_31") (; ";")) (} "}"))) (expression_statement "local_50 = &DAT_000180ad;" (assignment_expression "local_50 = &DAT_000180ad" (identifier "local_50") (= "=") (pointer_expression "&DAT_000180ad" (& "&") (identifier "DAT_000180ad"))) (; ";")) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" (identifier "local_31") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "local_4c = (byte *)0x17012;" (assignment_expression "local_4c = (byte *)0x17012" (identifier "local_4c") (= "=") (cast_expression "(byte *)0x17012" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x17012"))) (; ";")) (expression_statement "local_48 = (byte *)0x0;" (assignment_expression "local_48 = (byte *)0x0" (identifier "local_48") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "piVar9 = (int *)PTR_stdin_0001bfd0;" (assignment_expression "piVar9 = (int *)PTR_stdin_0001bfd0" (identifier "piVar9") (= "=") (cast_expression "(int *)PTR_stdin_0001bfd0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdin_0001bfd0"))) (; ";")) (do_statement "do {\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    } while (!bVar17);" (do "do") (compound_statement "{\n      iVar10 = 2;\n      pbVar13 = (byte *)*param_2;\n      pbVar15 = local_50;\n      do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);\n      if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }\n      local_48 = local_48 + 1;\n      param_2 = param_2 + 1;\n      bVar16 = param_1 < local_48;\n      bVar17 = param_1 == local_48;\n    }" ({ "{") (expression_statement "iVar10 = 2;" (assignment_expression "iVar10 = 2" (identifier "iVar10") (= "=") (number_literal "2")) (; ";")) (expression_statement "pbVar13 = (byte *)*param_2;" (assignment_expression "pbVar13 = (byte *)*param_2" (identifier "pbVar13") (= "=") (cast_expression "(byte *)*param_2" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*param_2" (* "*") (identifier "param_2")))) (; ";")) (expression_statement "pbVar15 = local_50;" (assignment_expression "pbVar15 = local_50" (identifier "pbVar15") (= "=") (identifier "local_50")) (; ";")) (do_statement "do {\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      } while (bVar17);" (do "do") (compound_statement "{\n        if (iVar10 == 0) break;\n        iVar10 = iVar10 + -1;\n        bVar16 = *pbVar13 < *pbVar15;\n        bVar17 = *pbVar13 == *pbVar15;\n        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;\n        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;\n      }" ({ "{") (if_statement "if (iVar10 == 0) break;" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "iVar10 = iVar10 + -1;" (assignment_expression "iVar10 = iVar10 + -1" (identifier "iVar10") (= "=") (binary_expression "iVar10 + -1" (identifier "iVar10") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar16 = *pbVar13 < *pbVar15;" (assignment_expression "bVar16 = *pbVar13 < *pbVar15" (identifier "bVar16") (= "=") (binary_expression "*pbVar13 < *pbVar15" (pointer_expression "*pbVar13" (* "*") (identifier "pbVar13")) (< "<") (pointer_expression "*pbVar15" (* "*") (identifier "pbVar15")))) (; ";")) (expression_statement "bVar17 = *pbVar13 == *pbVar15;" (assignment_expression "bVar17 = *pbVar13 == *pbVar15" (identifier "bVar17") (= "=") (binary_expression "*pbVar13 == *pbVar15" (pointer_expression "*pbVar13" (* "*") (identifier "pbVar13")) (== "==") (pointer_expression "*pbVar15" (* "*") (identifier "pbVar15")))) (; ";")) (expression_statement "pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1" (identifier "pbVar13") (= "=") (binary_expression "pbVar13 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar13 + (uint)bVar18 * -2" (identifier "pbVar13") (+ "+") (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar18")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;" (assignment_expression "pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1" (identifier "pbVar15") (= "=") (binary_expression "pbVar15 + (uint)bVar18 * -2 + 1" (binary_expression "pbVar15 + (uint)bVar18 * -2" (identifier "pbVar15") (+ "+") (binary_expression "(uint)bVar18 * -2" (cast_expression "(uint)bVar18" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar18")) (* "*") (number_literal "-2"))) (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(bVar17)" (( "(") (identifier "bVar17") () ")")) (; ";")) (if_statement "if ((!bVar16 && !bVar17) == bVar16) {\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }\n      else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }" (if "if") (parenthesized_expression "((!bVar16 && !bVar17) == bVar16)" (( "(") (binary_expression "(!bVar16 && !bVar17) == bVar16" (parenthesized_expression "(!bVar16 && !bVar17)" (( "(") (binary_expression "!bVar16 && !bVar17" (unary_expression "!bVar16" (! "!") (identifier "bVar16")) (&& "&&") (unary_expression "!bVar17" (! "!") (identifier "bVar17"))) () ")")) (== "==") (identifier "bVar16")) () ")")) (compound_statement "{\n        DAT_0001c171 = '\x01';\n        local_2c[(int)local_48] = *piVar9;\n      }" ({ "{") (expression_statement "DAT_0001c171 = '\x01';" (assignment_expression "DAT_0001c171 = '\x01'" (identifier "DAT_0001c171") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "local_2c[(int)local_48] = *piVar9;" (assignment_expression "local_2c[(int)local_48] = *piVar9" (subscript_expression "local_2c[(int)local_48]" (identifier "local_2c") ([ "[") (cast_expression "(int)local_48" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_48")) (] "]")) (= "=") (pointer_expression "*piVar9" (* "*") (identifier "piVar9"))) (; ";")) (} "}")) (else_clause "else {\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }" (else "else") (compound_statement "{\n        local_44 = piVar9;\n        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);\n        local_2c[(int)local_48] = (int)pFVar4;\n        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;\n        iVar10 = fileno(pFVar4);\n        if (iVar10 == 0) {\n          local_31 = '\x01';\n        }\n        FUN_000126a0();\n        piVar9 = local_44;\n      }" ({ "{") (expression_statement "local_44 = piVar9;" (assignment_expression "local_44 = piVar9" (identifier "local_44") (= "=") (identifier "piVar9")) (; ";")) (expression_statement "pFVar4 = fopen64((char *)*param_2,(char *)local_4c);" (assignment_expression "pFVar4 = fopen64((char *)*param_2,(char *)local_4c)" (identifier "pFVar4") (= "=") (call_expression "fopen64((char *)*param_2,(char *)local_4c)" (identifier "fopen64") (argument_list "((char *)*param_2,(char *)local_4c)" (( "(") (cast_expression "(char *)*param_2" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) (, ",") (cast_expression "(char *)local_4c" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_4c")) () ")")))) (; ";")) (expression_statement "local_2c[(int)local_48] = (int)pFVar4;" (assignment_expression "local_2c[(int)local_48] = (int)pFVar4" (subscript_expression "local_2c[(int)local_48]" (identifier "local_2c") ([ "[") (cast_expression "(int)local_48" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_48")) (] "]")) (= "=") (cast_expression "(int)pFVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "pFVar4"))) (; ";")) (if_statement "if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;" (if "if") (parenthesized_expression "(pFVar4 == (FILE *)0x0)" (( "(") (binary_expression "pFVar4 == (FILE *)0x0" (identifier "pFVar4") (== "==") (cast_expression "(FILE *)0x0" (( "(") (type_descriptor "FILE *" (type_identifier "FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00011e18;" (goto "goto") (statement_identifier "LAB_00011e18") (; ";"))) (expression_statement "iVar10 = fileno(pFVar4);" (assignment_expression "iVar10 = fileno(pFVar4)" (identifier "iVar10") (= "=") (call_expression "fileno(pFVar4)" (identifier "fileno") (argument_list "(pFVar4)" (( "(") (identifier "pFVar4") () ")")))) (; ";")) (if_statement "if (iVar10 == 0) {\n          local_31 = '\x01';\n        }" (if "if") (parenthesized_expression "(iVar10 == 0)" (( "(") (binary_expression "iVar10 == 0" (identifier "iVar10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          local_31 = '\x01';\n        }" ({ "{") (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" (identifier "local_31") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (} "}"))) (expression_statement "FUN_000126a0();" (call_expression "FUN_000126a0()" (identifier "FUN_000126a0") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "piVar9 = local_44;" (assignment_expression "piVar9 = local_44" (identifier "piVar9") (= "=") (identifier "local_44")) (; ";")) (} "}")))) (expression_statement "local_48 = local_48 + 1;" (assignment_expression "local_48 = local_48 + 1" (identifier "local_48") (= "=") (binary_expression "local_48 + 1" (identifier "local_48") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "param_2 = param_2 + 1;" (assignment_expression "param_2 = param_2 + 1" (identifier "param_2") (= "=") (binary_expression "param_2 + 1" (identifier "param_2") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar16 = param_1 < local_48;" (assignment_expression "bVar16 = param_1 < local_48" (identifier "bVar16") (= "=") (binary_expression "param_1 < local_48" (identifier "param_1") (< "<") (identifier "local_48"))) (; ";")) (expression_statement "bVar17 = param_1 == local_48;" (assignment_expression "bVar17 = param_1 == local_48" (identifier "bVar17") (= "=") (binary_expression "param_1 == local_48" (identifier "param_1") (== "==") (identifier "local_48"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(!bVar17)" (( "(") (unary_expression "!bVar17" (! "!") (identifier "bVar17")) () ")")) (; ";")) (if_statement "if (local_31 == '\0') {\n      local_31 = '\x01';\n    }\n    else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" (if "if") (parenthesized_expression "(local_31 == '\0')" (( "(") (binary_expression "local_31 == '\0'" (identifier "local_31") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      local_31 = '\x01';\n    }" ({ "{") (expression_statement "local_31 = '\x01';" (assignment_expression "local_31 = '\x01'" (identifier "local_31") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (} "}")) (else_clause "else if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" (else "else") (if_statement "if (DAT_0001c171 != '\0') {\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" (if "if") (parenthesized_expression "(DAT_0001c171 != '\0')" (( "(") (binary_expression "DAT_0001c171 != '\0'" (identifier "DAT_0001c171") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      dcgettext();\n      puVar11 = &stack0xffffff94;\n      error();\nLAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;\n      *(undefined4 *)(puVar11 + -0xc) = 3;\n      *(undefined4 *)(puVar11 + -0x10) = 0;\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;\n      uVar8 = FUN_00014440();\n      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;\n      piVar9 = __errno_location();\n      *(undefined4 *)(puVar11 + -0x14) = uVar8;\n      *(char **)(puVar11 + -0x18) = "%s";\n      *(int *)(puVar11 + -0x1c) = *piVar9;\n      puVar12 = puVar11 + -0x20;\n      *(undefined4 *)(puVar11 + -0x20) = 1;\n      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;\n      error();\n      goto LAB_00011e3f;\n    }" ({ "{") (expression_statement "dcgettext();" (call_expression "dcgettext()" (identifier "dcgettext") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar11 = &stack0xffffff94;" (assignment_expression "puVar11 = &stack0xffffff94" (identifier "puVar11") (= "=") (pointer_expression "&stack0xffffff94" (& "&") (identifier "stack0xffffff94"))) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_00011e18:\n      *(undefined4 *)(puVar11 + -8) = *param_2;" (statement_identifier "LAB_00011e18") (: ":") (expression_statement "*(undefined4 *)(puVar11 + -8) = *param_2;" (assignment_expression "*(undefined4 *)(puVar11 + -8) = *param_2" (pointer_expression "*(undefined4 *)(puVar11 + -8)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -8)" (( "(") (binary_expression "puVar11 + -8" (identifier "puVar11") (+ "+") (number_literal "-8")) () ")")))) (= "=") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) (; ";"))) (expression_statement "*(undefined4 *)(puVar11 + -0xc) = 3;" (assignment_expression "*(undefined4 *)(puVar11 + -0xc) = 3" (pointer_expression "*(undefined4 *)(puVar11 + -0xc)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0xc)" (( "(") (binary_expression "puVar11 + -0xc" (identifier "puVar11") (+ "+") (number_literal "-0xc")) () ")")))) (= "=") (number_literal "3")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x10) = 0;" (assignment_expression "*(undefined4 *)(puVar11 + -0x10) = 0" (pointer_expression "*(undefined4 *)(puVar11 + -0x10)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x10)" (( "(") (binary_expression "puVar11 + -0x10" (identifier "puVar11") (+ "+") (number_literal "-0x10")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x11e27;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x11e27" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x11e27")) (; ";")) (expression_statement "uVar8 = FUN_00014440();" (assignment_expression "uVar8 = FUN_00014440()" (identifier "uVar8") (= "=") (call_expression "FUN_00014440()" (identifier "FUN_00014440") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = 0x11e2e;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = 0x11e2e" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (number_literal "0x11e2e")) (; ";")) (expression_statement "piVar9 = __errno_location();" (assignment_expression "piVar9 = __errno_location()" (identifier "piVar9") (= "=") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x14) = uVar8;" (assignment_expression "*(undefined4 *)(puVar11 + -0x14) = uVar8" (pointer_expression "*(undefined4 *)(puVar11 + -0x14)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x14)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x14)" (( "(") (binary_expression "puVar11 + -0x14" (identifier "puVar11") (+ "+") (number_literal "-0x14")) () ")")))) (= "=") (identifier "uVar8")) (; ";")) (expression_statement "*(char **)(puVar11 + -0x18) = "%s";" (assignment_expression "*(char **)(puVar11 + -0x18) = "%s"" (pointer_expression "*(char **)(puVar11 + -0x18)" (* "*") (cast_expression "(char **)(puVar11 + -0x18)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar11 + -0x18)" (( "(") (binary_expression "puVar11 + -0x18" (identifier "puVar11") (+ "+") (number_literal "-0x18")) () ")")))) (= "=") (string_literal ""%s"" (" """) (string_content "%s") (" """))) (; ";")) (expression_statement "*(int *)(puVar11 + -0x1c) = *piVar9;" (assignment_expression "*(int *)(puVar11 + -0x1c) = *piVar9" (pointer_expression "*(int *)(puVar11 + -0x1c)" (* "*") (cast_expression "(int *)(puVar11 + -0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x1c)" (( "(") (binary_expression "puVar11 + -0x1c" (identifier "puVar11") (+ "+") (number_literal "-0x1c")) () ")")))) (= "=") (pointer_expression "*piVar9" (* "*") (identifier "piVar9"))) (; ";")) (expression_statement "puVar12 = puVar11 + -0x20;" (assignment_expression "puVar12 = puVar11 + -0x20" (identifier "puVar12") (= "=") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20"))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x20) = 1;" (assignment_expression "*(undefined4 *)(puVar11 + -0x20) = 1" (pointer_expression "*(undefined4 *)(puVar11 + -0x20)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x20)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x20)" (( "(") (binary_expression "puVar11 + -0x20" (identifier "puVar11") (+ "+") (number_literal "-0x20")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + -0x24) = 0x11e3f;" (assignment_expression "*(undefined4 *)(puVar11 + -0x24) = 0x11e3f" (pointer_expression "*(undefined4 *)(puVar11 + -0x24)" (* "*") (cast_expression "(undefined4 *)(puVar11 + -0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + -0x24)" (( "(") (binary_expression "puVar11 + -0x24" (identifier "puVar11") (+ "+") (number_literal "-0x24")) () ")")))) (= "=") (number_literal "0x11e3f")) (; ";")) (expression_statement "error();" (call_expression "error()" (identifier "error") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_00011e3f;" (goto "goto") (statement_identifier "LAB_00011e3f") (; ";")) (} "}"))))) (expression_statement "local_28 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "local_28 = (int *)PTR_stdout_0001bfd4" (identifier "local_28") (= "=") (cast_expression "(int *)PTR_stdout_0001bfd4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdout_0001bfd4"))) (; ";")) (expression_statement "local_40 = local_48;" (assignment_expression "local_40 = local_48" (identifier "local_40") (= "=") (identifier "local_48")) (; ";")) (expression_statement "local_20 = local_28;" (assignment_expression "local_20 = local_28" (identifier "local_20") (= "=") (identifier "local_28")) (; ";")) (labeled_statement "LAB_000119d5:\n    local_4c = DAT_0001c16c;" (statement_identifier "LAB_000119d5") (: ":") (expression_statement "local_4c = DAT_0001c16c;" (assignment_expression "local_4c = DAT_0001c16c" (identifier "local_4c") (= "=") (identifier "DAT_0001c16c")) (; ";"))) (expression_statement "local_50 = (byte *)0x1;" (assignment_expression "local_50 = (byte *)0x1" (identifier "local_50") (= "=") (cast_expression "(byte *)0x1" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "bVar16 = false;" (assignment_expression "bVar16 = false" (identifier "bVar16") (= "=") (false "false")) (; ";")) (expression_statement "local_44 = (int *)0x0;" (assignment_expression "local_44 = (int *)0x0" (identifier "local_44") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "p_Var6 = (_IO_FILE *)*local_2c;" (assignment_expression "p_Var6 = (_IO_FILE *)*local_2c" (identifier "p_Var6") (= "=") (cast_expression "(_IO_FILE *)*local_2c" (( "(") (type_descriptor "_IO_FILE *" (type_identifier "_IO_FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_2c" (* "*") (identifier "local_2c")))) (; ";")) (expression_statement "piVar9 = local_2c;" (assignment_expression "piVar9 = local_2c" (identifier "piVar9") (= "=") (identifier "local_2c")) (; ";")) (if_statement "if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;" (if "if") (parenthesized_expression "(p_Var6 == (_IO_FILE *)0x0)" (( "(") (binary_expression "p_Var6 == (_IO_FILE *)0x0" (identifier "p_Var6") (== "==") (cast_expression "(_IO_FILE *)0x0" (( "(") (type_descriptor "_IO_FILE *" (type_identifier "_IO_FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00011b37;" (goto "goto") (statement_identifier "LAB_00011b37") (; ";"))) (labeled_statement "LAB_00011a08:\n    pbVar13 = (byte *)p_Var6->_IO_read_ptr;" (statement_identifier "LAB_00011a08") (: ":") (expression_statement "pbVar13 = (byte *)p_Var6->_IO_read_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_read_ptr" (identifier "pbVar13") (= "=") (cast_expression "(byte *)p_Var6->_IO_read_ptr" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "p_Var6->_IO_read_ptr" (identifier "p_Var6") (-> "->") (field_identifier "_IO_read_ptr")))) (; ";"))) (if_statement "if (pbVar13 < p_Var6->_IO_read_end) {\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }\n    else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }" (if "if") (parenthesized_expression "(pbVar13 < p_Var6->_IO_read_end)" (( "(") (binary_expression "pbVar13 < p_Var6->_IO_read_end" (identifier "pbVar13") (< "<") (field_expression "p_Var6->_IO_read_end" (identifier "p_Var6") (-> "->") (field_identifier "_IO_read_end"))) () ")")) (compound_statement "{\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\n      if (local_44 == (int *)0x0) goto LAB_00011a54;\n    }" ({ "{") (expression_statement "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_read_ptr" (identifier "p_Var6") (-> "->") (field_identifier "_IO_read_ptr")) (= "=") (cast_expression "(char *)(pbVar13 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar13 + 1)" (( "(") (binary_expression "pbVar13 + 1" (identifier "pbVar13") (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "uVar7 = (uint)*pbVar13;" (assignment_expression "uVar7 = (uint)*pbVar13" (identifier "uVar7") (= "=") (binary_expression "(uint)*pbVar13" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "pbVar13"))) (; ";")) (if_statement "if (local_44 == (int *)0x0) goto LAB_00011a54;" (if "if") (parenthesized_expression "(local_44 == (int *)0x0)" (( "(") (binary_expression "local_44 == (int *)0x0" (identifier "local_44") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00011a54;" (goto "goto") (statement_identifier "LAB_00011a54") (; ";"))) (} "}")) (else_clause "else {\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }" (else "else") (compound_statement "{\n      local_30 = __uflow(p_Var6);\n      local_24 = (uint *)__errno_location();\n      local_3c = *local_24;\n      uVar7 = local_30;\n      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }\n    }" ({ "{") (expression_statement "local_30 = __uflow(p_Var6);" (assignment_expression "local_30 = __uflow(p_Var6)" (identifier "local_30") (= "=") (call_expression "__uflow(p_Var6)" (identifier "__uflow") (argument_list "(p_Var6)" (( "(") (identifier "p_Var6") () ")")))) (; ";")) (expression_statement "local_24 = (uint *)__errno_location();" (assignment_expression "local_24 = (uint *)__errno_location()" (identifier "local_24") (= "=") (cast_expression "(uint *)__errno_location()" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "__errno_location()" (identifier "__errno_location") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "local_3c = *local_24;" (assignment_expression "local_3c = *local_24" (identifier "local_3c") (= "=") (pointer_expression "*local_24" (* "*") (identifier "local_24"))) (; ";")) (expression_statement "uVar7 = local_30;" (assignment_expression "uVar7 = local_30" (identifier "uVar7") (= "=") (identifier "local_30")) (; ";")) (if_statement "if (local_30 == 0xffffffff || local_44 == (int *)0x0) {\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }" (if "if") (parenthesized_expression "(local_30 == 0xffffffff || local_44 == (int *)0x0)" (( "(") (binary_expression "local_30 == 0xffffffff || local_44 == (int *)0x0" (binary_expression "local_30 == 0xffffffff" (identifier "local_30") (== "==") (number_literal "0xffffffff")) (|| "||") (binary_expression "local_44 == (int *)0x0" (identifier "local_44") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) () ")")) (compound_statement "{\n        if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }\n        goto LAB_00011a54;\n      }" ({ "{") (if_statement "if (local_30 == 0xffffffff) {\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }" (if "if") (parenthesized_expression "(local_30 == 0xffffffff)" (( "(") (binary_expression "local_30 == 0xffffffff" (identifier "local_30") (== "==") (number_literal "0xffffffff")) () ")")) (compound_statement "{\n          if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }\n          *piVar9 = 0;\n          local_40 = local_40 + -1;\n          goto LAB_00011b37;\n        }" ({ "{") (if_statement "if ((p_Var6->_flags & 0x20) == 0) {\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }\n          else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" (if "if") (parenthesized_expression "((p_Var6->_flags & 0x20) == 0)" (( "(") (binary_expression "(p_Var6->_flags & 0x20) == 0" (parenthesized_expression "(p_Var6->_flags & 0x20)" (( "(") (binary_expression "p_Var6->_flags & 0x20" (field_expression "p_Var6->_flags" (identifier "p_Var6") (-> "->") (field_identifier "_flags")) (& "&") (number_literal "0x20")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" ({ "{") (expression_statement "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;" (assignment_expression "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0" (identifier "p_Var1") (= "=") (pointer_expression "*(_IO_FILE **)PTR_stdin_0001bfd0" (* "*") (cast_expression "(_IO_FILE **)PTR_stdin_0001bfd0" (( "(") (type_descriptor "_IO_FILE **" (type_identifier "_IO_FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdin_0001bfd0")))) (; ";")) (} "}")) (else_clause "else {\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" (else "else") (compound_statement "{\n            uVar8 = FUN_00014440();\n            error(0,local_3c,"%s",uVar8);\n            local_31 = '\0';\n            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;\n          }" ({ "{") (expression_statement "uVar8 = FUN_00014440();" (assignment_expression "uVar8 = FUN_00014440()" (identifier "uVar8") (= "=") (call_expression "FUN_00014440()" (identifier "FUN_00014440") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,local_3c,"%s",uVar8);" (call_expression "error(0,local_3c,"%s",uVar8)" (identifier "error") (argument_list "(0,local_3c,"%s",uVar8)" (( "(") (number_literal "0") (, ",") (identifier "local_3c") (, ",") (string_literal ""%s"" (" """) (string_content "%s") (" """)) (, ",") (identifier "uVar8") () ")"))) (; ";")) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" (identifier "local_31") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;" (assignment_expression "p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0" (identifier "p_Var1") (= "=") (pointer_expression "*(_IO_FILE **)PTR_stdin_0001bfd0" (* "*") (cast_expression "(_IO_FILE **)PTR_stdin_0001bfd0" (( "(") (type_descriptor "_IO_FILE **" (type_identifier "_IO_FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdin_0001bfd0")))) (; ";")) (} "}")))) (if_statement "if (p_Var6 == p_Var1) {\n            clearerr_unlocked(p_Var6);\n          }\n          else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }" (if "if") (parenthesized_expression "(p_Var6 == p_Var1)" (( "(") (binary_expression "p_Var6 == p_Var1" (identifier "p_Var6") (== "==") (identifier "p_Var1")) () ")")) (compound_statement "{\n            clearerr_unlocked(p_Var6);\n          }" ({ "{") (expression_statement "clearerr_unlocked(p_Var6);" (call_expression "clearerr_unlocked(p_Var6)" (identifier "clearerr_unlocked") (argument_list "(p_Var6)" (( "(") (identifier "p_Var6") () ")"))) (; ";")) (} "}")) (else_clause "else {\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }" (else "else") (compound_statement "{\n            iVar10 = FUN_00014ff0();\n            if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }\n          }" ({ "{") (expression_statement "iVar10 = FUN_00014ff0();" (assignment_expression "iVar10 = FUN_00014ff0()" (identifier "iVar10") (= "=") (call_expression "FUN_00014ff0()" (identifier "FUN_00014ff0") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar10 == -1) {\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }" (if "if") (parenthesized_expression "(iVar10 == -1)" (( "(") (binary_expression "iVar10 == -1" (identifier "iVar10") (== "==") (number_literal "-1")) () ")")) (compound_statement "{\n              uVar8 = FUN_00014440();\n              error(0,*local_24,"%s",uVar8);\n              local_31 = '\0';\n            }" ({ "{") (expression_statement "uVar8 = FUN_00014440();" (assignment_expression "uVar8 = FUN_00014440()" (identifier "uVar8") (= "=") (call_expression "FUN_00014440()" (identifier "FUN_00014440") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "error(0,*local_24,"%s",uVar8);" (call_expression "error(0,*local_24,"%s",uVar8)" (identifier "error") (argument_list "(0,*local_24,"%s",uVar8)" (( "(") (number_literal "0") (, ",") (pointer_expression "*local_24" (* "*") (identifier "local_24")) (, ",") (string_literal ""%s"" (" """) (string_content "%s") (" """)) (, ",") (identifier "uVar8") () ")"))) (; ";")) (expression_statement "local_31 = '\0';" (assignment_expression "local_31 = '\0'" (identifier "local_31") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (} "}"))) (} "}")))) (expression_statement "*piVar9 = 0;" (assignment_expression "*piVar9 = 0" (pointer_expression "*piVar9" (* "*") (identifier "piVar9")) (= "=") (number_literal "0")) (; ";")) (expression_statement "local_40 = local_40 + -1;" (assignment_expression "local_40 = local_40 + -1" (identifier "local_40") (= "=") (binary_expression "local_40 + -1" (identifier "local_40") (+ "+") (number_literal "-1"))) (; ";")) (goto_statement "goto LAB_00011b37;" (goto "goto") (statement_identifier "LAB_00011b37") (; ";")) (} "}"))) (goto_statement "goto LAB_00011a54;" (goto "goto") (statement_identifier "LAB_00011a54") (; ";")) (} "}"))) (} "}")))) (expression_statement "piVar3 = local_44;" (assignment_expression "piVar3 = local_44" (identifier "piVar3") (= "=") (identifier "local_44")) (; ";")) (expression_statement "piVar14 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "piVar14 = (int *)PTR_stdout_0001bfd4" (identifier "piVar14") (= "=") (cast_expression "(int *)PTR_stdout_0001bfd4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdout_0001bfd4"))) (; ";")) (expression_statement "local_3c = uVar7;" (assignment_expression "local_3c = uVar7" (identifier "local_3c") (= "=") (identifier "uVar7")) (; ";")) (expression_statement "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);" (assignment_expression "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" (identifier "piVar5") (= "=") (cast_expression "(int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" (identifier "fwrite_unlocked") (argument_list "(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4)" (( "(") (identifier "local_38") (, ",") (number_literal "1") (, ",") (cast_expression "(size_t)local_44" (( "(") (type_descriptor "size_t" (primitive_type "size_t")) () ")") (identifier "local_44")) (, ",") (pointer_expression "*(FILE **)PTR_stdout_0001bfd4" (* "*") (cast_expression "(FILE **)PTR_stdout_0001bfd4" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdout_0001bfd4"))) () ")"))))) (; ";")) (if_statement "if (piVar5 != piVar3) goto LAB_00011ab9;" (if "if") (parenthesized_expression "(piVar5 != piVar3)" (( "(") (binary_expression "piVar5 != piVar3" (identifier "piVar5") (!= "!=") (identifier "piVar3")) () ")")) (goto_statement "goto LAB_00011ab9;" (goto "goto") (statement_identifier "LAB_00011ab9") (; ";"))) (expression_statement "local_44 = (int *)0x0;" (assignment_expression "local_44 = (int *)0x0" (identifier "local_44") (= "=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "uVar7 = local_3c;" (assignment_expression "uVar7 = local_3c" (identifier "uVar7") (= "=") (identifier "local_3c")) (; ";")) (labeled_statement "LAB_00011a54:\n    piVar14 = (int *)PTR_stdout_0001bfd4;" (statement_identifier "LAB_00011a54") (: ":") (expression_statement "piVar14 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "piVar14 = (int *)PTR_stdout_0001bfd4" (identifier "piVar14") (= "=") (cast_expression "(int *)PTR_stdout_0001bfd4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdout_0001bfd4"))) (; ";"))) (if_statement "if (uVar7 == DAT_0001c0e8) {\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }" (if "if") (parenthesized_expression "(uVar7 == DAT_0001c0e8)" (( "(") (binary_expression "uVar7 == DAT_0001c0e8" (identifier "uVar7") (== "==") (identifier "DAT_0001c0e8")) () ")")) (compound_statement "{\n      piVar14 = local_20;\n      if (local_48 != local_50) goto LAB_00011ae1;\n      goto LAB_00011b8e;\n    }" ({ "{") (expression_statement "piVar14 = local_20;" (assignment_expression "piVar14 = local_20" (identifier "piVar14") (= "=") (identifier "local_20")) (; ";")) (if_statement "if (local_48 != local_50) goto LAB_00011ae1;" (if "if") (parenthesized_expression "(local_48 != local_50)" (( "(") (binary_expression "local_48 != local_50" (identifier "local_48") (!= "!=") (identifier "local_50")) () ")")) (goto_statement "goto LAB_00011ae1;" (goto "goto") (statement_identifier "LAB_00011ae1") (; ";"))) (goto_statement "goto LAB_00011b8e;" (goto "goto") (statement_identifier "LAB_00011b8e") (; ";")) (} "}"))) (ERROR "do {\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }\nLAB_00011e3f:\n                    \n  *(undefined **)(puVar12 + -4) = &UNK_00011e44;\n  FUN_00014fb0();" (do "do") (compound_statement "{\n      p_Var6 = (_IO_FILE *)*piVar14;\n      pcVar2 = p_Var6->_IO_write_ptr;\n      if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }\n      p_Var6 = (_IO_FILE *)*piVar9;\n      pbVar13 = (byte *)p_Var6->_IO_read_ptr;\n      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;\n      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);\n      uVar7 = (uint)*pbVar13;\nLAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);\n    if (local_48 != local_50) goto LAB_00011ae1;\nLAB_00011b8e:\n    bVar18 = (byte)uVar7;\n    p_Var6 = (_IO_FILE *)*piVar14;\n    pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;\nLAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n    if (-1 < iVar10) goto LAB_00011ba4;\nLAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );\n  }" ({ "{") (expression_statement "p_Var6 = (_IO_FILE *)*piVar14;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar14" (identifier "p_Var6") (= "=") (cast_expression "(_IO_FILE *)*piVar14" (( "(") (type_descriptor "_IO_FILE *" (type_identifier "_IO_FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar14" (* "*") (identifier "piVar14")))) (; ";")) (expression_statement "pcVar2 = p_Var6->_IO_write_ptr;" (assignment_expression "pcVar2 = p_Var6->_IO_write_ptr" (identifier "pcVar2") (= "=") (field_expression "p_Var6->_IO_write_ptr" (identifier "p_Var6") (-> "->") (field_identifier "_IO_write_ptr"))) (; ";")) (if_statement "if (pcVar2 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }\n      else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }" (if "if") (parenthesized_expression "(pcVar2 < p_Var6->_IO_write_end)" (( "(") (binary_expression "pcVar2 < p_Var6->_IO_write_end" (identifier "pcVar2") (< "<") (field_expression "p_Var6->_IO_write_end" (identifier "p_Var6") (-> "->") (field_identifier "_IO_write_end"))) () ")")) (compound_statement "{\n        p_Var6->_IO_write_ptr = pcVar2 + 1;\n        *pcVar2 = (char)uVar7;\n      }" ({ "{") (expression_statement "p_Var6->_IO_write_ptr = pcVar2 + 1;" (assignment_expression "p_Var6->_IO_write_ptr = pcVar2 + 1" (field_expression "p_Var6->_IO_write_ptr" (identifier "p_Var6") (-> "->") (field_identifier "_IO_write_ptr")) (= "=") (binary_expression "pcVar2 + 1" (identifier "pcVar2") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*pcVar2 = (char)uVar7;" (assignment_expression "*pcVar2 = (char)uVar7" (pointer_expression "*pcVar2" (* "*") (identifier "pcVar2")) (= "=") (cast_expression "(char)uVar7" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "uVar7"))) (; ";")) (} "}")) (else_clause "else {\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }" (else "else") (compound_statement "{\n        iVar10 = __overflow(p_Var6,uVar7 & 0xff);\n        if (iVar10 < 0) goto LAB_00011ab9;\n      }" ({ "{") (expression_statement "iVar10 = __overflow(p_Var6,uVar7 & 0xff);" (assignment_expression "iVar10 = __overflow(p_Var6,uVar7 & 0xff)" (identifier "iVar10") (= "=") (call_expression "__overflow(p_Var6,uVar7 & 0xff)" (identifier "__overflow") (argument_list "(p_Var6,uVar7 & 0xff)" (( "(") (identifier "p_Var6") (, ",") (binary_expression "uVar7 & 0xff" (identifier "uVar7") (& "&") (number_literal "0xff")) () ")")))) (; ";")) (if_statement "if (iVar10 < 0) goto LAB_00011ab9;" (if "if") (parenthesized_expression "(iVar10 < 0)" (( "(") (binary_expression "iVar10 < 0" (identifier "iVar10") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00011ab9;" (goto "goto") (statement_identifier "LAB_00011ab9") (; ";"))) (} "}")))) (expression_statement "p_Var6 = (_IO_FILE *)*piVar9;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar9" (identifier "p_Var6") (= "=") (cast_expression "(_IO_FILE *)*piVar9" (( "(") (type_descriptor "_IO_FILE *" (type_identifier "_IO_FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar9" (* "*") (identifier "piVar9")))) (; ";")) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_read_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_read_ptr" (identifier "pbVar13") (= "=") (cast_expression "(byte *)p_Var6->_IO_read_ptr" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "p_Var6->_IO_read_ptr" (identifier "p_Var6") (-> "->") (field_identifier "_IO_read_ptr")))) (; ";")) (if_statement "if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;" (if "if") (parenthesized_expression "(p_Var6->_IO_read_end <= pbVar13)" (( "(") (binary_expression "p_Var6->_IO_read_end <= pbVar13" (field_expression "p_Var6->_IO_read_end" (identifier "p_Var6") (-> "->") (field_identifier "_IO_read_end")) (<= "<=") (identifier "pbVar13")) () ")")) (goto_statement "goto LAB_00011ac0;" (goto "goto") (statement_identifier "LAB_00011ac0") (; ";"))) (expression_statement "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_read_ptr" (identifier "p_Var6") (-> "->") (field_identifier "_IO_read_ptr")) (= "=") (cast_expression "(char *)(pbVar13 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar13 + 1)" (( "(") (binary_expression "pbVar13 + 1" (identifier "pbVar13") (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "uVar7 = (uint)*pbVar13;" (assignment_expression "uVar7 = (uint)*pbVar13" (identifier "uVar7") (= "=") (binary_expression "(uint)*pbVar13" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "pbVar13"))) (; ";")) (labeled_statement "LAB_00011a8c:\n    } while (DAT_0001c0e8 != uVar7);" (statement_identifier "LAB_00011a8c") (: ":") (ERROR "}" (} "}")) (while_statement "while (DAT_0001c0e8 != uVar7);" (while "while") (parenthesized_expression "(DAT_0001c0e8 != uVar7)" (( "(") (binary_expression "DAT_0001c0e8 != uVar7" (identifier "DAT_0001c0e8") (!= "!=") (identifier "uVar7")) () ")")) (expression_statement ";" (; ";")))) (if_statement "if (local_48 != local_50) goto LAB_00011ae1;" (if "if") (parenthesized_expression "(local_48 != local_50)" (( "(") (binary_expression "local_48 != local_50" (identifier "local_48") (!= "!=") (identifier "local_50")) () ")")) (goto_statement "goto LAB_00011ae1;" (goto "goto") (statement_identifier "LAB_00011ae1") (; ";"))) (labeled_statement "LAB_00011b8e:\n    bVar18 = (byte)uVar7;" (statement_identifier "LAB_00011b8e") (: ":") (expression_statement "bVar18 = (byte)uVar7;" (assignment_expression "bVar18 = (byte)uVar7" (identifier "bVar18") (= "=") (cast_expression "(byte)uVar7" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar7"))) (; ";"))) (expression_statement "p_Var6 = (_IO_FILE *)*piVar14;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar14" (identifier "p_Var6") (= "=") (cast_expression "(_IO_FILE *)*piVar14" (( "(") (type_descriptor "_IO_FILE *" (type_identifier "_IO_FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar14" (* "*") (identifier "piVar14")))) (; ";")) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_write_ptr" (identifier "pbVar13") (= "=") (cast_expression "(byte *)p_Var6->_IO_write_ptr" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "p_Var6->_IO_write_ptr" (identifier "p_Var6") (-> "->") (field_identifier "_IO_write_ptr")))) (; ";")) (if_statement "if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;" (if "if") (parenthesized_expression "(pbVar13 < p_Var6->_IO_write_end)" (( "(") (binary_expression "pbVar13 < p_Var6->_IO_write_end" (identifier "pbVar13") (< "<") (field_expression "p_Var6->_IO_write_end" (identifier "p_Var6") (-> "->") (field_identifier "_IO_write_end"))) () ")")) (goto_statement "goto LAB_00011b9c;" (goto "goto") (statement_identifier "LAB_00011b9c") (; ";"))) (labeled_statement "LAB_00011c45:\n    iVar10 = __overflow(p_Var6,uVar7 & 0xff);" (statement_identifier "LAB_00011c45") (: ":") (expression_statement "iVar10 = __overflow(p_Var6,uVar7 & 0xff);" (assignment_expression "iVar10 = __overflow(p_Var6,uVar7 & 0xff)" (identifier "iVar10") (= "=") (call_expression "__overflow(p_Var6,uVar7 & 0xff)" (identifier "__overflow") (argument_list "(p_Var6,uVar7 & 0xff)" (( "(") (identifier "p_Var6") (, ",") (binary_expression "uVar7 & 0xff" (identifier "uVar7") (& "&") (number_literal "0xff")) () ")")))) (; ";"))) (if_statement "if (-1 < iVar10) goto LAB_00011ba4;" (if "if") (parenthesized_expression "(-1 < iVar10)" (( "(") (binary_expression "-1 < iVar10" (number_literal "-1") (< "<") (identifier "iVar10")) () ")")) (goto_statement "goto LAB_00011ba4;" (goto "goto") (statement_identifier "LAB_00011ba4") (; ";"))) (labeled_statement "LAB_00011ab9:\n    do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );" (statement_identifier "LAB_00011ab9") (: ":") (do_statement "do {\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    } while( true );" (do "do") (compound_statement "{\n      p_Var6 = (_IO_FILE *)FUN_00011830();\nLAB_00011ac0:\n      uVar7 = __uflow(p_Var6);\n      if (uVar7 != 0xffffffff) goto LAB_00011a8c;\n      if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }\nLAB_00011ae1:\n      piVar14 = local_28;\n      bVar18 = *local_4c;\n      if (bVar18 == 0) goto LAB_00011af0;\n      p_Var6 = (_IO_FILE *)*local_28;\n      pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n      if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }\n      iVar10 = __overflow(p_Var6,(uint)bVar18);\n      if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }\n    }" ({ "{") (expression_statement "p_Var6 = (_IO_FILE *)FUN_00011830();" (assignment_expression "p_Var6 = (_IO_FILE *)FUN_00011830()" (identifier "p_Var6") (= "=") (cast_expression "(_IO_FILE *)FUN_00011830()" (( "(") (type_descriptor "_IO_FILE *" (type_identifier "_IO_FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00011830()" (identifier "FUN_00011830") (argument_list "()" (( "(") () ")"))))) (; ";")) (labeled_statement "LAB_00011ac0:\n      uVar7 = __uflow(p_Var6);" (statement_identifier "LAB_00011ac0") (: ":") (expression_statement "uVar7 = __uflow(p_Var6);" (assignment_expression "uVar7 = __uflow(p_Var6)" (identifier "uVar7") (= "=") (call_expression "__uflow(p_Var6)" (identifier "__uflow") (argument_list "(p_Var6)" (( "(") (identifier "p_Var6") () ")")))) (; ";"))) (if_statement "if (uVar7 != 0xffffffff) goto LAB_00011a8c;" (if "if") (parenthesized_expression "(uVar7 != 0xffffffff)" (( "(") (binary_expression "uVar7 != 0xffffffff" (identifier "uVar7") (!= "!=") (number_literal "0xffffffff")) () ")")) (goto_statement "goto LAB_00011a8c;" (goto "goto") (statement_identifier "LAB_00011a8c") (; ";"))) (if_statement "if (local_48 == local_50) {\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }" (if "if") (parenthesized_expression "(local_48 == local_50)" (( "(") (binary_expression "local_48 == local_50" (identifier "local_48") (== "==") (identifier "local_50")) () ")")) (compound_statement "{\n        p_Var6 = (_IO_FILE *)*piVar14;\n        uVar7 = (uint)DAT_0001c0e8;\n        pbVar13 = (byte *)p_Var6->_IO_write_ptr;\n        bVar18 = DAT_0001c0e8;\n        if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }\n        goto LAB_00011c45;\n      }" ({ "{") (expression_statement "p_Var6 = (_IO_FILE *)*piVar14;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar14" (identifier "p_Var6") (= "=") (cast_expression "(_IO_FILE *)*piVar14" (( "(") (type_descriptor "_IO_FILE *" (type_identifier "_IO_FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar14" (* "*") (identifier "piVar14")))) (; ";")) (expression_statement "uVar7 = (uint)DAT_0001c0e8;" (assignment_expression "uVar7 = (uint)DAT_0001c0e8" (identifier "uVar7") (= "=") (cast_expression "(uint)DAT_0001c0e8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "DAT_0001c0e8"))) (; ";")) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_write_ptr" (identifier "pbVar13") (= "=") (cast_expression "(byte *)p_Var6->_IO_write_ptr" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "p_Var6->_IO_write_ptr" (identifier "p_Var6") (-> "->") (field_identifier "_IO_write_ptr")))) (; ";")) (expression_statement "bVar18 = DAT_0001c0e8;" (assignment_expression "bVar18 = DAT_0001c0e8" (identifier "bVar18") (= "=") (identifier "DAT_0001c0e8")) (; ";")) (if_statement "if (pbVar13 < p_Var6->_IO_write_end) {\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }" (if "if") (parenthesized_expression "(pbVar13 < p_Var6->_IO_write_end)" (( "(") (binary_expression "pbVar13 < p_Var6->_IO_write_end" (identifier "pbVar13") (< "<") (field_expression "p_Var6->_IO_write_end" (identifier "p_Var6") (-> "->") (field_identifier "_IO_write_end"))) () ")")) (compound_statement "{\nLAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n          *pbVar13 = bVar18;\nLAB_00011ba4:\n          bVar16 = true;\n          goto LAB_00011b06;\n        }" ({ "{") (labeled_statement "LAB_00011b9c:\n          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);" (statement_identifier "LAB_00011b9c") (: ":") (expression_statement "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_write_ptr" (identifier "p_Var6") (-> "->") (field_identifier "_IO_write_ptr")) (= "=") (cast_expression "(char *)(pbVar13 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar13 + 1)" (( "(") (binary_expression "pbVar13 + 1" (identifier "pbVar13") (+ "+") (number_literal "1")) () ")")))) (; ";"))) (expression_statement "*pbVar13 = bVar18;" (assignment_expression "*pbVar13 = bVar18" (pointer_expression "*pbVar13" (* "*") (identifier "pbVar13")) (= "=") (identifier "bVar18")) (; ";")) (labeled_statement "LAB_00011ba4:\n          bVar16 = true;" (statement_identifier "LAB_00011ba4") (: ":") (expression_statement "bVar16 = true;" (assignment_expression "bVar16 = true" (identifier "bVar16") (= "=") (true "true")) (; ";"))) (goto_statement "goto LAB_00011b06;" (goto "goto") (statement_identifier "LAB_00011b06") (; ";")) (} "}"))) (goto_statement "goto LAB_00011c45;" (goto "goto") (statement_identifier "LAB_00011c45") (; ";")) (} "}"))) (labeled_statement "LAB_00011ae1:\n      piVar14 = local_28;" (statement_identifier "LAB_00011ae1") (: ":") (expression_statement "piVar14 = local_28;" (assignment_expression "piVar14 = local_28" (identifier "piVar14") (= "=") (identifier "local_28")) (; ";"))) (expression_statement "bVar18 = *local_4c;" (assignment_expression "bVar18 = *local_4c" (identifier "bVar18") (= "=") (pointer_expression "*local_4c" (* "*") (identifier "local_4c"))) (; ";")) (if_statement "if (bVar18 == 0) goto LAB_00011af0;" (if "if") (parenthesized_expression "(bVar18 == 0)" (( "(") (binary_expression "bVar18 == 0" (identifier "bVar18") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00011af0;" (goto "goto") (statement_identifier "LAB_00011af0") (; ";"))) (expression_statement "p_Var6 = (_IO_FILE *)*local_28;" (assignment_expression "p_Var6 = (_IO_FILE *)*local_28" (identifier "p_Var6") (= "=") (cast_expression "(_IO_FILE *)*local_28" (( "(") (type_descriptor "_IO_FILE *" (type_identifier "_IO_FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*local_28" (* "*") (identifier "local_28")))) (; ";")) (expression_statement "pbVar13 = (byte *)p_Var6->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)p_Var6->_IO_write_ptr" (identifier "pbVar13") (= "=") (cast_expression "(byte *)p_Var6->_IO_write_ptr" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "p_Var6->_IO_write_ptr" (identifier "p_Var6") (-> "->") (field_identifier "_IO_write_ptr")))) (; ";")) (if_statement "if (pbVar13 < p_Var6->_IO_write_end) {\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }" (if "if") (parenthesized_expression "(pbVar13 < p_Var6->_IO_write_end)" (( "(") (binary_expression "pbVar13 < p_Var6->_IO_write_end" (identifier "pbVar13") (< "<") (field_expression "p_Var6->_IO_write_end" (identifier "p_Var6") (-> "->") (field_identifier "_IO_write_end"))) () ")")) (compound_statement "{\n        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);\n        *pbVar13 = bVar18;\n        goto LAB_00011af0;\n      }" ({ "{") (expression_statement "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);" (assignment_expression "p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1)" (field_expression "p_Var6->_IO_write_ptr" (identifier "p_Var6") (-> "->") (field_identifier "_IO_write_ptr")) (= "=") (cast_expression "(char *)(pbVar13 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar13 + 1)" (( "(") (binary_expression "pbVar13 + 1" (identifier "pbVar13") (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "*pbVar13 = bVar18;" (assignment_expression "*pbVar13 = bVar18" (pointer_expression "*pbVar13" (* "*") (identifier "pbVar13")) (= "=") (identifier "bVar18")) (; ";")) (goto_statement "goto LAB_00011af0;" (goto "goto") (statement_identifier "LAB_00011af0") (; ";")) (} "}"))) (expression_statement "iVar10 = __overflow(p_Var6,(uint)bVar18);" (assignment_expression "iVar10 = __overflow(p_Var6,(uint)bVar18)" (identifier "iVar10") (= "=") (call_expression "__overflow(p_Var6,(uint)bVar18)" (identifier "__overflow") (argument_list "(p_Var6,(uint)bVar18)" (( "(") (identifier "p_Var6") (, ",") (cast_expression "(uint)bVar18" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar18")) () ")")))) (; ";")) (if_statement "if (-1 < iVar10) {\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }" (if "if") (parenthesized_expression "(-1 < iVar10)" (( "(") (binary_expression "-1 < iVar10" (number_literal "-1") (< "<") (identifier "iVar10")) () ")")) (compound_statement "{\nLAB_00011af0:\n        local_4c = local_4c + 1;\n        bVar16 = true;\n        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;\nLAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }\n        if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }\nLAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;\n        goto LAB_000119d5;\n      }" ({ "{") (labeled_statement "LAB_00011af0:\n        local_4c = local_4c + 1;" (statement_identifier "LAB_00011af0") (: ":") (expression_statement "local_4c = local_4c + 1;" (assignment_expression "local_4c = local_4c + 1" (identifier "local_4c") (= "=") (binary_expression "local_4c + 1" (identifier "local_4c") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "bVar16 = true;" (assignment_expression "bVar16 = true" (identifier "bVar16") (= "=") (true "true")) (; ";")) (if_statement "if (DAT_0001c168 == local_4c) goto LAB_00011b6f;" (if "if") (parenthesized_expression "(DAT_0001c168 == local_4c)" (( "(") (binary_expression "DAT_0001c168 == local_4c" (identifier "DAT_0001c168") (== "==") (identifier "local_4c")) () ")")) (goto_statement "goto LAB_00011b6f;" (goto "goto") (statement_identifier "LAB_00011b6f") (; ";"))) (labeled_statement "LAB_00011b06:\n        while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }" (statement_identifier "LAB_00011b06") (: ":") (while_statement "while( true ) {\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n          pbVar13 = local_50 + 1;\n          piVar9 = piVar9 + 1;\n          bVar17 = local_48 <= local_50;\n          local_50 = pbVar13;\n          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;\n          p_Var6 = (_IO_FILE *)*piVar9;\n          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;\nLAB_00011b37:\n          piVar3 = local_44;\n          piVar14 = (int *)PTR_stdout_0001bfd4;\n          if (local_48 == local_50) break;\n          if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }\n          local_4c = local_4c + 1;\n          if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }\n        }" ({ "{") (expression_statement "pbVar13 = local_50 + 1;" (assignment_expression "pbVar13 = local_50 + 1" (identifier "pbVar13") (= "=") (binary_expression "local_50 + 1" (identifier "local_50") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "piVar9 = piVar9 + 1;" (assignment_expression "piVar9 = piVar9 + 1" (identifier "piVar9") (= "=") (binary_expression "piVar9 + 1" (identifier "piVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar17 = local_48 <= local_50;" (assignment_expression "bVar17 = local_48 <= local_50" (identifier "bVar17") (= "=") (binary_expression "local_48 <= local_50" (identifier "local_48") (<= "<=") (identifier "local_50"))) (; ";")) (expression_statement "local_50 = pbVar13;" (assignment_expression "local_50 = pbVar13" (identifier "local_50") (= "=") (identifier "pbVar13")) (; ";")) (if_statement "if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;" (if "if") (parenthesized_expression "(bVar17 || local_40 == (byte *)0x0)" (( "(") (binary_expression "bVar17 || local_40 == (byte *)0x0" (identifier "bVar17") (|| "||") (binary_expression "local_40 == (byte *)0x0" (identifier "local_40") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")))) () ")")) (goto_statement "goto LAB_00011bf9;" (goto "goto") (statement_identifier "LAB_00011bf9") (; ";"))) (expression_statement "p_Var6 = (_IO_FILE *)*piVar9;" (assignment_expression "p_Var6 = (_IO_FILE *)*piVar9" (identifier "p_Var6") (= "=") (cast_expression "(_IO_FILE *)*piVar9" (( "(") (type_descriptor "_IO_FILE *" (type_identifier "_IO_FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar9" (* "*") (identifier "piVar9")))) (; ";")) (if_statement "if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;" (if "if") (parenthesized_expression "(p_Var6 != (_IO_FILE *)0x0)" (( "(") (binary_expression "p_Var6 != (_IO_FILE *)0x0" (identifier "p_Var6") (!= "!=") (cast_expression "(_IO_FILE *)0x0" (( "(") (type_descriptor "_IO_FILE *" (type_identifier "_IO_FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00011a08;" (goto "goto") (statement_identifier "LAB_00011a08") (; ";"))) (labeled_statement "LAB_00011b37:\n          piVar3 = local_44;" (statement_identifier "LAB_00011b37") (: ":") (expression_statement "piVar3 = local_44;" (assignment_expression "piVar3 = local_44" (identifier "piVar3") (= "=") (identifier "local_44")) (; ";"))) (expression_statement "piVar14 = (int *)PTR_stdout_0001bfd4;" (assignment_expression "piVar14 = (int *)PTR_stdout_0001bfd4" (identifier "piVar14") (= "=") (cast_expression "(int *)PTR_stdout_0001bfd4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stdout_0001bfd4"))) (; ";")) (if_statement "if (local_48 == local_50) break;" (if "if") (parenthesized_expression "(local_48 == local_50)" (( "(") (binary_expression "local_48 == local_50" (identifier "local_48") (== "==") (identifier "local_50")) () ")")) (break_statement "break;" (break "break") (; ";"))) (if_statement "if (*local_4c != 0) {\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }" (if "if") (parenthesized_expression "(*local_4c != 0)" (( "(") (binary_expression "*local_4c != 0" (pointer_expression "*local_4c" (* "*") (identifier "local_4c")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            *(byte *)((int)local_38 + (int)local_44) = *local_4c;\n            local_44 = (int *)((int)local_44 + 1);\n          }" ({ "{") (expression_statement "*(byte *)((int)local_38 + (int)local_44) = *local_4c;" (assignment_expression "*(byte *)((int)local_38 + (int)local_44) = *local_4c" (pointer_expression "*(byte *)((int)local_38 + (int)local_44)" (* "*") (cast_expression "(byte *)((int)local_38 + (int)local_44)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_38 + (int)local_44)" (( "(") (binary_expression "(int)local_38 + (int)local_44" (cast_expression "(int)local_38" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_38")) (+ "+") (cast_expression "(int)local_44" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_44"))) () ")")))) (= "=") (pointer_expression "*local_4c" (* "*") (identifier "local_4c"))) (; ";")) (expression_statement "local_44 = (int *)((int)local_44 + 1);" (assignment_expression "local_44 = (int *)((int)local_44 + 1)" (identifier "local_44") (= "=") (cast_expression "(int *)((int)local_44 + 1)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)local_44 + 1)" (( "(") (binary_expression "(int)local_44 + 1" (cast_expression "(int)local_44" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_44")) (+ "+") (number_literal "1")) () ")")))) (; ";")) (} "}"))) (expression_statement "local_4c = local_4c + 1;" (assignment_expression "local_4c = local_4c + 1" (identifier "local_4c") (= "=") (binary_expression "local_4c + 1" (identifier "local_4c") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (DAT_0001c168 == local_4c) {\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }" (if "if") (parenthesized_expression "(DAT_0001c168 == local_4c)" (( "(") (binary_expression "DAT_0001c168 == local_4c" (identifier "DAT_0001c168") (== "==") (identifier "local_4c")) () ")")) (compound_statement "{\nLAB_00011b6f:\n            local_4c = DAT_0001c16c;\n          }" ({ "{") (labeled_statement "LAB_00011b6f:\n            local_4c = DAT_0001c16c;" (statement_identifier "LAB_00011b6f") (: ":") (expression_statement "local_4c = DAT_0001c16c;" (assignment_expression "local_4c = DAT_0001c16c" (identifier "local_4c") (= "=") (identifier "DAT_0001c16c")) (; ";"))) (} "}"))) (} "}")))) (if_statement "if (bVar16) {\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }" (if "if") (parenthesized_expression "(bVar16)" (( "(") (identifier "bVar16") () ")")) (compound_statement "{\n          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;\n          if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }\n          bVar18 = DAT_0001c0e8;\n          pbVar13 = (byte *)pFVar4->_IO_write_ptr;\n          if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }\n        }" ({ "{") (expression_statement "pFVar4 = *(FILE **)PTR_stdout_0001bfd4;" (assignment_expression "pFVar4 = *(FILE **)PTR_stdout_0001bfd4" (identifier "pFVar4") (= "=") (pointer_expression "*(FILE **)PTR_stdout_0001bfd4" (* "*") (cast_expression "(FILE **)PTR_stdout_0001bfd4" (( "(") (type_descriptor "FILE **" (type_identifier "FILE") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stdout_0001bfd4")))) (; ";")) (if_statement "if (local_44 != (int *)0x0) {\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }" (if "if") (parenthesized_expression "(local_44 != (int *)0x0)" (( "(") (binary_expression "local_44 != (int *)0x0" (identifier "local_44") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);\n            if (piVar5 != piVar3) goto LAB_00011ab9;\n            pFVar4 = (FILE *)*piVar14;\n          }" ({ "{") (expression_statement "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);" (assignment_expression "piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4)" (identifier "piVar5") (= "=") (cast_expression "(int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4)" (identifier "fwrite_unlocked") (argument_list "(local_38,1,(size_t)local_44,pFVar4)" (( "(") (identifier "local_38") (, ",") (number_literal "1") (, ",") (cast_expression "(size_t)local_44" (( "(") (type_descriptor "size_t" (primitive_type "size_t")) () ")") (identifier "local_44")) (, ",") (identifier "pFVar4") () ")"))))) (; ";")) (if_statement "if (piVar5 != piVar3) goto LAB_00011ab9;" (if "if") (parenthesized_expression "(piVar5 != piVar3)" (( "(") (binary_expression "piVar5 != piVar3" (identifier "piVar5") (!= "!=") (identifier "piVar3")) () ")")) (goto_statement "goto LAB_00011ab9;" (goto "goto") (statement_identifier "LAB_00011ab9") (; ";"))) (expression_statement "pFVar4 = (FILE *)*piVar14;" (assignment_expression "pFVar4 = (FILE *)*piVar14" (identifier "pFVar4") (= "=") (cast_expression "(FILE *)*piVar14" (( "(") (type_descriptor "FILE *" (type_identifier "FILE") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar14" (* "*") (identifier "piVar14")))) (; ";")) (} "}"))) (expression_statement "bVar18 = DAT_0001c0e8;" (assignment_expression "bVar18 = DAT_0001c0e8" (identifier "bVar18") (= "=") (identifier "DAT_0001c0e8")) (; ";")) (expression_statement "pbVar13 = (byte *)pFVar4->_IO_write_ptr;" (assignment_expression "pbVar13 = (byte *)pFVar4->_IO_write_ptr" (identifier "pbVar13") (= "=") (cast_expression "(byte *)pFVar4->_IO_write_ptr" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (field_expression "pFVar4->_IO_write_ptr" (identifier "pFVar4") (-> "->") (field_identifier "_IO_write_ptr")))) (; ";")) (if_statement "if (pbVar13 < pFVar4->_IO_write_end) {\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }\n          else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }" (if "if") (parenthesized_expression "(pbVar13 < pFVar4->_IO_write_end)" (( "(") (binary_expression "pbVar13 < pFVar4->_IO_write_end" (identifier "pbVar13") (< "<") (field_expression "pFVar4->_IO_write_end" (identifier "pFVar4") (-> "->") (field_identifier "_IO_write_end"))) () ")")) (compound_statement "{\n            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);\n            *pbVar13 = bVar18;\n          }" ({ "{") (expression_statement "pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);" (assignment_expression "pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1)" (field_expression "pFVar4->_IO_write_ptr" (identifier "pFVar4") (-> "->") (field_identifier "_IO_write_ptr")) (= "=") (cast_expression "(char *)(pbVar13 + 1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar13 + 1)" (( "(") (binary_expression "pbVar13 + 1" (identifier "pbVar13") (+ "+") (number_literal "1")) () ")")))) (; ";")) (expression_statement "*pbVar13 = bVar18;" (assignment_expression "*pbVar13 = bVar18" (pointer_expression "*pbVar13" (* "*") (identifier "pbVar13")) (= "=") (identifier "bVar18")) (; ";")) (} "}")) (else_clause "else {\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }" (else "else") (compound_statement "{\n            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);\n            if (iVar10 < 0) goto LAB_00011ab9;\n          }" ({ "{") (expression_statement "iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);" (assignment_expression "iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8)" (identifier "iVar10") (= "=") (call_expression "__overflow(pFVar4,(uint)DAT_0001c0e8)" (identifier "__overflow") (argument_list "(pFVar4,(uint)DAT_0001c0e8)" (( "(") (identifier "pFVar4") (, ",") (cast_expression "(uint)DAT_0001c0e8" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "DAT_0001c0e8")) () ")")))) (; ";")) (if_statement "if (iVar10 < 0) goto LAB_00011ab9;" (if "if") (parenthesized_expression "(iVar10 < 0)" (( "(") (binary_expression "iVar10 < 0" (identifier "iVar10") (< "<") (number_literal "0")) () ")")) (goto_statement "goto LAB_00011ab9;" (goto "goto") (statement_identifier "LAB_00011ab9") (; ";"))) (} "}")))) (} "}"))) (labeled_statement "LAB_00011bf9:\n        if (local_40 == (byte *)0x0) goto LAB_00011c05;" (statement_identifier "LAB_00011bf9") (: ":") (if_statement "if (local_40 == (byte *)0x0) goto LAB_00011c05;" (if "if") (parenthesized_expression "(local_40 == (byte *)0x0)" (( "(") (binary_expression "local_40 == (byte *)0x0" (identifier "local_40") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00011c05;" (goto "goto") (statement_identifier "LAB_00011c05") (; ";")))) (goto_statement "goto LAB_000119d5;" (goto "goto") (statement_identifier "LAB_000119d5") (; ";")) (} "}"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";"))) (} "}")) (identifier "LAB_00011e3f") (: ":") (* "*") (( "(") (identifier "undefined") (* "*") (* "*") () ")") (( "(") (identifier "puVar12") (+ "+") (number_literal "-4") () ")") (= "=") (& "&") (identifier "UNK_00011e44") (; ";") (identifier "FUN_00014fb0") (( "(") () ")") (; ";")) (} "}"))) (} "")))

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

type_1 function_1(size_t var_2,char **fnamptr)

{
  type_2 *var_29;
  type_3 *puVar2;
  size_t n;
  type_4 *var_9;
  int *var_24;
  int *var_41;
  type_2 *var_21;
  char *var_35;
  type_5 uVar8;
  int var_4;
  type_6 var_33;
  type_5 *var_37;
  type_7 *var_18;
  type_7 *var_43;
  char **var_13;
  type_8 *var_5;
  int *var_25;
  type_8 *var_6;
  bool var_7;
  bool var_42;
  type_8 var_38;
  type_7 auStack_5c [12];
  type_8 *var_28;
  type_8 *var_39;
  type_8 *var_12;
  int *var_22;
  type_8 *var_32;
  type_6 local_3c;
  void *local_38;
  char var_14;
  type_6 var_27;
  int *local_2c;
  int *local_28;
  type_6 *local_24;
  int *local_20;
  type_9 uStack_14;
  
  var_38 = 0;
  uStack_14 = 0x11879;
  local_38 = var_1(var_2 + 2);
  n = (var_2 + 1) * 4;
  var_43 = auStack_5c;
  if ((-1 < (int)n) && (var_43 = auStack_5c, var_2 + 1 >> 0x1e == 0)) {
    local_2c = (int *)var_1(n);
    var_18 = auStack_5c;
    var_7 = false;
    var_42 = var_2 == 0;
    if (var_42) {
      var_14 = '\x01';
LAB_00011c05:
      var_3(local_2c);
      var_3(local_38);
      return (type_1)var_14;
    }
    var_28 = &DAT_000180ad;
    var_14 = '\0';
    var_39 = (type_8 *)0x17012;
    var_12 = (type_8 *)0x0;
    var_41 = (int *)PTR_stdin_0001bfd0;
    var_13 = fnamptr;
    do {
      var_4 = 2;
      var_5 = (type_8 *)*var_13;
      var_6 = var_28;
      do {
        if (var_4 == 0) break;
        var_4 = var_4 + -1;
        var_7 = *var_5 < *var_6;
        var_42 = *var_5 == *var_6;
        var_5 = var_5 + (type_6)var_38 * -2 + 1;
        var_6 = var_6 + (type_6)var_38 * -2 + 1;
      } while (var_42);
      if ((!var_7 && !var_42) == var_7) {
        var_15 = true;
        local_2c[(int)var_12] = *var_41;
      }
      else {
        var_22 = var_41;
        var_9 = var_8(*var_13,(char *)var_39);
        local_2c[(int)var_12] = (int)var_9;
        if (var_9 == (type_4 *)0x0) goto LAB_00011e18;
        var_4 = var_10(var_9);
        if (var_4 == 0) {
          var_14 = '\x01';
        }
        var_11((type_4 *)var_9,FADVISE_SEQUENTIAL);
        var_41 = var_22;
      }
      var_12 = var_12 + 1;
      var_13 = var_13 + 1;
      var_7 = var_2 < var_12;
      var_42 = (type_8 *)var_2 == var_12;
    } while (!var_42);
    if (var_14 == '\0') {
      var_14 = '\x01';
    }
    else if (var_15 != false) {
      var_16();
      var_18 = &stack0xffffff94;
      var_17();
LAB_00011e18:
      *(char **)(var_18 + -8) = *var_13;
      *(type_9 *)(var_18 + -0xc) = 3;
      *(type_9 *)(var_18 + -0x10) = 0;
      *(type_9 *)(var_18 + -0x14) = 0x11e27;
      var_35 = var_19
                         (*(int *)(var_18 + -0x10),*(type_10 *)(var_18 + -0xc),
                          *(char **)(var_18 + -8));
      *(type_9 *)(var_18 + -0x14) = 0x11e2e;
      var_41 = var_20();
      *(char **)(var_18 + -0x14) = var_35;
      *(char **)(var_18 + -0x18) = "%s";
      *(int *)(var_18 + -0x1c) = *var_41;
      var_43 = var_18 + -0x20;
      *(type_9 *)(var_18 + -0x20) = 1;
      *(type_9 *)(var_18 + -0x24) = 0x11e3f;
      var_17();
      goto LAB_00011e3f;
    }
    local_28 = (int *)PTR_stdout_0001bfd4;
    var_32 = var_12;
    local_20 = local_28;
LAB_000119d5:
    var_39 = (type_8 *)delims;
    var_28 = (type_8 *)0x1;
    var_7 = false;
    var_22 = (int *)0x0;
    var_21 = (type_2 *)*local_2c;
    var_41 = local_2c;
    if (var_21 == (type_2 *)0x0) goto LAB_00011b37;
LAB_00011a08:
    var_5 = (type_8 *)var_21->_IO_read_ptr;
    if (var_5 < var_21->_IO_read_end) {
      var_21->_IO_read_ptr = (char *)(var_5 + 1);
      var_33 = (type_6)*var_5;
      if (var_22 != (int *)0x0) {
LAB_00011a25:
        var_25 = var_22;
        local_3c = var_33;
        var_24 = (int *)var_23(local_38,1,(size_t)var_22,*(type_4 **)PTR_stdout_0001bfd4);
        if (var_24 != var_25) goto LAB_00011ab9;
        var_22 = (int *)0x0;
        var_33 = local_3c;
      }
    }
    else {
      var_27 = var_26(var_21);
      local_24 = (type_6 *)var_20();
      local_3c = *local_24;
      var_33 = var_27;
      if (var_27 != 0xffffffff && var_22 != (int *)0x0) goto LAB_00011a25;
      if (var_27 == 0xffffffff) {
        if ((var_21->_flags & 0x20) == 0) {
          var_29 = *(type_2 **)PTR_stdin_0001bfd0;
        }
        else {
          var_35 = var_19
                             (0,shell_escape_quoting_style,fnamptr[(int)(var_28 + -1)]);
          var_17(0,local_3c,"%s",var_35);
          var_14 = '\0';
          var_29 = *(type_2 **)PTR_stdin_0001bfd0;
        }
        if (var_21 == var_29) {
          var_30(var_21);
        }
        else {
          var_4 = var_31((type_4 *)var_21);
          if (var_4 == -1) {
            var_35 = var_19
                               (0,shell_escape_quoting_style,fnamptr[(int)(var_28 + -1)]);
            var_17(0,*local_24,"%s",var_35);
            var_14 = '\0';
          }
        }
        *var_41 = 0;
        var_32 = var_32 + -1;
        goto LAB_00011b37;
      }
    }
    var_25 = (int *)PTR_stdout_0001bfd4;
    if (var_33 == var_34) {
      var_25 = local_20;
      if (var_12 != var_28) goto LAB_00011ae1;
    }
    else {
      do {
        var_21 = (type_2 *)*var_25;
        var_35 = var_21->_IO_write_ptr;
        if (var_35 < var_21->_IO_write_end) {
          var_21->_IO_write_ptr = var_35 + 1;
          *var_35 = (char)var_33;
        }
        else {
          var_4 = var_36(var_21,var_33 & 0xff);
          if (var_4 < 0) goto LAB_00011ab9;
        }
        var_21 = (type_2 *)*var_41;
        var_5 = (type_8 *)var_21->_IO_read_ptr;
        if (var_5 < var_21->_IO_read_end) {
          var_21->_IO_read_ptr = (char *)(var_5 + 1);
          var_33 = (type_6)*var_5;
        }
        else {
          var_33 = var_26(var_21);
          if (var_33 == 0xffffffff) {
            if (var_12 != var_28) goto LAB_00011ae1;
            var_21 = (type_2 *)*var_25;
            var_33 = (type_6)var_34;
            var_37 = (type_5 *)var_21->_IO_write_ptr;
            uVar8 = var_34;
            if (var_21->_IO_write_end <= var_37) goto LAB_00011c45;
            goto LAB_00011b9c;
          }
        }
      } while (var_34 != var_33);
      if (var_12 != var_28) {
LAB_00011ae1:
        var_38 = *var_39;
        if (var_38 != 0) {
          var_21 = (type_2 *)*local_28;
          var_5 = (type_8 *)var_21->_IO_write_ptr;
          if (var_5 < var_21->_IO_write_end) {
            var_21->_IO_write_ptr = (char *)(var_5 + 1);
            *var_5 = var_38;
          }
          else {
            var_4 = var_36(var_21,(type_6)var_38);
            if (var_4 < 0) goto LAB_00011ab9;
          }
        }
        var_39 = var_39 + 1;
        var_7 = true;
        if ((type_8 *)delim_end == var_39) goto LAB_00011b6f;
        goto LAB_00011b06;
      }
    }
    var_21 = (type_2 *)*var_25;
    var_37 = (type_5 *)var_21->_IO_write_ptr;
    uVar8 = (type_5)var_33;
    if (var_37 < var_21->_IO_write_end) {
LAB_00011b9c:
      var_21->_IO_write_ptr = (char *)(var_37 + 1);
      *var_37 = uVar8;
    }
    else {
LAB_00011c45:
      var_4 = var_36(var_21,var_33 & 0xff);
      if (var_4 < 0) {
LAB_00011ab9:
                    /* WARNING: Subroutine does not return */
        var_40();
      }
    }
    var_7 = true;
LAB_00011b06:
    var_5 = var_28 + 1;
    var_41 = var_41 + 1;
    var_42 = var_28 < var_12;
    var_28 = var_5;
    if (var_42 && var_32 != (type_8 *)0x0) {
      var_21 = (type_2 *)*var_41;
      if (var_21 != (type_2 *)0x0) goto LAB_00011a08;
LAB_00011b37:
      var_25 = var_22;
      puVar2 = PTR_stdout_0001bfd4;
      if (var_12 != var_28) {
        if (*var_39 != 0) {
          *(type_8 *)((int)local_38 + (int)var_22) = *var_39;
          var_22 = (int *)((int)var_22 + 1);
        }
        var_39 = var_39 + 1;
        if ((type_8 *)delim_end == var_39) {
LAB_00011b6f:
          var_39 = (type_8 *)delims;
        }
        goto LAB_00011b06;
      }
      if (var_7) {
        var_9 = *(type_4 **)PTR_stdout_0001bfd4;
        if (var_22 != (int *)0x0) {
          var_41 = (int *)var_23(local_38,1,(size_t)var_22,var_9);
          if (var_41 != var_25) goto LAB_00011ab9;
          var_9 = *(type_4 **)puVar2;
        }
        uVar8 = var_34;
        var_37 = (type_5 *)var_9->_IO_write_ptr;
        if (var_9->_IO_write_end <= var_37) {
          var_4 = var_36(var_9,(type_6)var_34);
          if (-1 < var_4) goto LAB_00011bf9;
          goto LAB_00011ab9;
        }
        var_9->_IO_write_ptr = (char *)(var_37 + 1);
        *var_37 = uVar8;
      }
    }
LAB_00011bf9:
    if (var_32 == (type_8 *)0x0) goto LAB_00011c05;
    goto LAB_000119d5;
  }
LAB_00011e3f:
                    /* WARNING: Subroutine does not return */
  *(type_3 **)(var_43 + -4) = &UNK_00011e44;
  var_44();
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) 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: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (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: (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: (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: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) 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)) (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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (number_literal) right: (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (identifier)) right: (binary_expression left: (binary_expression left: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))) right: (number_literal)) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (false))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal))))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (return_statement (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (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: (cast_expression type: (type_descriptor type: (type_identifier) 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: (identifier)))) (do_statement body: (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: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (do_statement body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_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: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (identifier)) right: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))))) condition: (parenthesized_expression (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (unary_expression argument: (identifier)) right: (unary_expression argument: (identifier)))) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (pointer_expression argument: (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))) (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier))))) condition: (parenthesized_expression (unary_expression argument: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (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)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (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: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (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))))) right: (string_literal (string_content)))) (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: (number_literal))))) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (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: (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: (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: (false))) (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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (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))) (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: (field_expression argument: (identifier) field: (field_identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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 (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (string_literal (string_content)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence)))) (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: (identifier)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (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: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (pointer_expression argument: (identifier)) (string_literal (string_content)) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (char_literal (escape_sequence))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (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: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (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: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (goto_statement label: (statement_identifier)))) (ERROR (compound_statement (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: (field_expression argument: (identifier) field: (field_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_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: (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)))) (labeled_statement label: (statement_identifier) (ERROR) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) body: (expression_statement))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (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: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (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))) (labeled_statement label: (statement_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: (call_expression function: (identifier) arguments: (argument_list))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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: (field_expression argument: (identifier) field: (field_identifier)))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (true)))) (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_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: (true))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (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: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (break_statement)) (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: (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: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) right: (pointer_expression argument: (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: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (identifier))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier))))))))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) 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: (pointer_expression argument: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (field_expression argument: (identifier) field: (field_identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (field_expression argument: (identifier) field: (field_identifier)))) consequence: (compound_statement (expression_statement (assignment_expression left: (field_expression argument: (identifier) field: (field_identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier)))) (goto_statement label: (statement_identifier))))) condition: (parenthesized_expression (true))))) (identifier) (identifier) (identifier) (number_literal) (identifier) (identifier)))) (MISSING "}"))))

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

char MASKED(byte *param_1,undefined4 *param_2)

{
  _IO_FILE *p_Var1;
  char *pcVar2;
  int *piVar3;
  FILE *pFVar4;
  int *piVar5;
  _IO_FILE *p_Var6;
  uint uVar7;
  undefined4 uVar8;
  int *piVar9;
  int iVar10;
  undefined1 *puVar11;
  undefined1 *puVar12;
  byte *pbVar13;
  int *piVar14;
  byte *pbVar15;
  bool bVar16;
  bool bVar17;
  byte bVar18;
  undefined1 auStack_5c [12];
  byte *local_50;
  byte *local_4c;
  byte *local_48;
  int *local_44;
  byte *local_40;
  uint local_3c;
  void *local_38;
  char local_31;
  uint local_30;
  int *local_2c;
  int *local_28;
  uint *local_24;
  int *local_20;
  undefined4 uStack_14;
  
  bVar18 = 0;
  uStack_14 = 0x11879;
  local_38 = (void *)FUN_00014cb0();
  puVar12 = auStack_5c;
  if ((-1 < (int)(param_1 + 1) * 4) && (puVar12 = auStack_5c, (uint)(param_1 + 1) >> 0x1e == 0)) {
    local_2c = (int *)FUN_00014cb0();
    puVar11 = auStack_5c;
    bVar16 = false;
    bVar17 = param_1 == (byte *)0x0;
    if (bVar17) {
      local_31 = '\x01';
LAB_00011c05:
      free(local_2c);
      free(local_38);
      return local_31;
    }
    local_50 = &DAT_000180ad;
    local_31 = '\0';
    local_4c = (byte *)0x17012;
    local_48 = (byte *)0x0;
    piVar9 = (int *)PTR_stdin_0001bfd0;
    do {
      iVar10 = 2;
      pbVar13 = (byte *)*param_2;
      pbVar15 = local_50;
      do {
        if (iVar10 == 0) break;
        iVar10 = iVar10 + -1;
        bVar16 = *pbVar13 < *pbVar15;
        bVar17 = *pbVar13 == *pbVar15;
        pbVar13 = pbVar13 + (uint)bVar18 * -2 + 1;
        pbVar15 = pbVar15 + (uint)bVar18 * -2 + 1;
      } while (bVar17);
      if ((!bVar16 && !bVar17) == bVar16) {
        DAT_0001c171 = '\x01';
        local_2c[(int)local_48] = *piVar9;
      }
      else {
        local_44 = piVar9;
        pFVar4 = fopen64((char *)*param_2,(char *)local_4c);
        local_2c[(int)local_48] = (int)pFVar4;
        if (pFVar4 == (FILE *)0x0) goto LAB_00011e18;
        iVar10 = fileno(pFVar4);
        if (iVar10 == 0) {
          local_31 = '\x01';
        }
        FUN_000126a0();
        piVar9 = local_44;
      }
      local_48 = local_48 + 1;
      param_2 = param_2 + 1;
      bVar16 = param_1 < local_48;
      bVar17 = param_1 == local_48;
    } while (!bVar17);
    if (local_31 == '\0') {
      local_31 = '\x01';
    }
    else if (DAT_0001c171 != '\0') {
      dcgettext();
      puVar11 = &stack0xffffff94;
      error();
LAB_00011e18:
      *(undefined4 *)(puVar11 + -8) = *param_2;
      *(undefined4 *)(puVar11 + -0xc) = 3;
      *(undefined4 *)(puVar11 + -0x10) = 0;
      *(undefined4 *)(puVar11 + -0x14) = 0x11e27;
      uVar8 = FUN_00014440();
      *(undefined4 *)(puVar11 + -0x14) = 0x11e2e;
      piVar9 = __errno_location();
      *(undefined4 *)(puVar11 + -0x14) = uVar8;
      *(char **)(puVar11 + -0x18) = "%s";
      *(int *)(puVar11 + -0x1c) = *piVar9;
      puVar12 = puVar11 + -0x20;
      *(undefined4 *)(puVar11 + -0x20) = 1;
      *(undefined4 *)(puVar11 + -0x24) = 0x11e3f;
      error();
      goto LAB_00011e3f;
    }
    local_28 = (int *)PTR_stdout_0001bfd4;
    local_40 = local_48;
    local_20 = local_28;
LAB_000119d5:
    local_4c = DAT_0001c16c;
    local_50 = (byte *)0x1;
    bVar16 = false;
    local_44 = (int *)0x0;
    p_Var6 = (_IO_FILE *)*local_2c;
    piVar9 = local_2c;
    if (p_Var6 == (_IO_FILE *)0x0) goto LAB_00011b37;
LAB_00011a08:
    pbVar13 = (byte *)p_Var6->_IO_read_ptr;
    if (pbVar13 < p_Var6->_IO_read_end) {
      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);
      uVar7 = (uint)*pbVar13;
      if (local_44 == (int *)0x0) goto LAB_00011a54;
    }
    else {
      local_30 = __uflow(p_Var6);
      local_24 = (uint *)__errno_location();
      local_3c = *local_24;
      uVar7 = local_30;
      if (local_30 == 0xffffffff || local_44 == (int *)0x0) {
        if (local_30 == 0xffffffff) {
          if ((p_Var6->_flags & 0x20) == 0) {
            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;
          }
          else {
            uVar8 = FUN_00014440();
            error(0,local_3c,"%s",uVar8);
            local_31 = '\0';
            p_Var1 = *(_IO_FILE **)PTR_stdin_0001bfd0;
          }
          if (p_Var6 == p_Var1) {
            clearerr_unlocked(p_Var6);
          }
          else {
            iVar10 = FUN_00014ff0();
            if (iVar10 == -1) {
              uVar8 = FUN_00014440();
              error(0,*local_24,"%s",uVar8);
              local_31 = '\0';
            }
          }
          *piVar9 = 0;
          local_40 = local_40 + -1;
          goto LAB_00011b37;
        }
        goto LAB_00011a54;
      }
    }
    piVar3 = local_44;
    piVar14 = (int *)PTR_stdout_0001bfd4;
    local_3c = uVar7;
    piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,*(FILE **)PTR_stdout_0001bfd4);
    if (piVar5 != piVar3) goto LAB_00011ab9;
    local_44 = (int *)0x0;
    uVar7 = local_3c;
LAB_00011a54:
    piVar14 = (int *)PTR_stdout_0001bfd4;
    if (uVar7 == DAT_0001c0e8) {
      piVar14 = local_20;
      if (local_48 != local_50) goto LAB_00011ae1;
      goto LAB_00011b8e;
    }
    do {
      p_Var6 = (_IO_FILE *)*piVar14;
      pcVar2 = p_Var6->_IO_write_ptr;
      if (pcVar2 < p_Var6->_IO_write_end) {
        p_Var6->_IO_write_ptr = pcVar2 + 1;
        *pcVar2 = (char)uVar7;
      }
      else {
        iVar10 = __overflow(p_Var6,uVar7 & 0xff);
        if (iVar10 < 0) goto LAB_00011ab9;
      }
      p_Var6 = (_IO_FILE *)*piVar9;
      pbVar13 = (byte *)p_Var6->_IO_read_ptr;
      if (p_Var6->_IO_read_end <= pbVar13) goto LAB_00011ac0;
      p_Var6->_IO_read_ptr = (char *)(pbVar13 + 1);
      uVar7 = (uint)*pbVar13;
LAB_00011a8c:
    } while (DAT_0001c0e8 != uVar7);
    if (local_48 != local_50) goto LAB_00011ae1;
LAB_00011b8e:
    bVar18 = (byte)uVar7;
    p_Var6 = (_IO_FILE *)*piVar14;
    pbVar13 = (byte *)p_Var6->_IO_write_ptr;
    if (pbVar13 < p_Var6->_IO_write_end) goto LAB_00011b9c;
LAB_00011c45:
    iVar10 = __overflow(p_Var6,uVar7 & 0xff);
    if (-1 < iVar10) goto LAB_00011ba4;
LAB_00011ab9:
    do {
      p_Var6 = (_IO_FILE *)FUN_00011830();
LAB_00011ac0:
      uVar7 = __uflow(p_Var6);
      if (uVar7 != 0xffffffff) goto LAB_00011a8c;
      if (local_48 == local_50) {
        p_Var6 = (_IO_FILE *)*piVar14;
        uVar7 = (uint)DAT_0001c0e8;
        pbVar13 = (byte *)p_Var6->_IO_write_ptr;
        bVar18 = DAT_0001c0e8;
        if (pbVar13 < p_Var6->_IO_write_end) {
LAB_00011b9c:
          p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);
          *pbVar13 = bVar18;
LAB_00011ba4:
          bVar16 = true;
          goto LAB_00011b06;
        }
        goto LAB_00011c45;
      }
LAB_00011ae1:
      piVar14 = local_28;
      bVar18 = *local_4c;
      if (bVar18 == 0) goto LAB_00011af0;
      p_Var6 = (_IO_FILE *)*local_28;
      pbVar13 = (byte *)p_Var6->_IO_write_ptr;
      if (pbVar13 < p_Var6->_IO_write_end) {
        p_Var6->_IO_write_ptr = (char *)(pbVar13 + 1);
        *pbVar13 = bVar18;
        goto LAB_00011af0;
      }
      iVar10 = __overflow(p_Var6,(uint)bVar18);
      if (-1 < iVar10) {
LAB_00011af0:
        local_4c = local_4c + 1;
        bVar16 = true;
        if (DAT_0001c168 == local_4c) goto LAB_00011b6f;
LAB_00011b06:
        while( true ) {
          pbVar13 = local_50 + 1;
          piVar9 = piVar9 + 1;
          bVar17 = local_48 <= local_50;
          local_50 = pbVar13;
          if (bVar17 || local_40 == (byte *)0x0) goto LAB_00011bf9;
          p_Var6 = (_IO_FILE *)*piVar9;
          if (p_Var6 != (_IO_FILE *)0x0) goto LAB_00011a08;
LAB_00011b37:
          piVar3 = local_44;
          piVar14 = (int *)PTR_stdout_0001bfd4;
          if (local_48 == local_50) break;
          if (*local_4c != 0) {
            *(byte *)((int)local_38 + (int)local_44) = *local_4c;
            local_44 = (int *)((int)local_44 + 1);
          }
          local_4c = local_4c + 1;
          if (DAT_0001c168 == local_4c) {
LAB_00011b6f:
            local_4c = DAT_0001c16c;
          }
        }
        if (bVar16) {
          pFVar4 = *(FILE **)PTR_stdout_0001bfd4;
          if (local_44 != (int *)0x0) {
            piVar5 = (int *)fwrite_unlocked(local_38,1,(size_t)local_44,pFVar4);
            if (piVar5 != piVar3) goto LAB_00011ab9;
            pFVar4 = (FILE *)*piVar14;
          }
          bVar18 = DAT_0001c0e8;
          pbVar13 = (byte *)pFVar4->_IO_write_ptr;
          if (pbVar13 < pFVar4->_IO_write_end) {
            pFVar4->_IO_write_ptr = (char *)(pbVar13 + 1);
            *pbVar13 = bVar18;
          }
          else {
            iVar10 = __overflow(pFVar4,(uint)DAT_0001c0e8);
            if (iVar10 < 0) goto LAB_00011ab9;
          }
        }
LAB_00011bf9:
        if (local_40 == (byte *)0x0) goto LAB_00011c05;
        goto LAB_000119d5;
      }
    } while( true );
  }
LAB_00011e3f:
                    /* WARNING: Subroutine does not return */
  *(undefined **)(puVar12 + -4) = &UNK_00011e44;
  FUN_00014fb0();
}

