
/* WARNING: Enum "MHD_FLAG": Some values do not have unique names */

MHD_Result
internal_add_connection
          (MHD_Daemon *daemon,MHD_socket client_socket,sockaddr *addr,socklen_t addrlen,
          _Bool external_add,_Bool non_blck)

{
  undefined *puVar1;
  int iVar2;
  uint uVar3;
  int *piVar4;
  MemoryPool *pMVar5;
  sockaddr *psVar6;
  time_t tVar7;
  int iVar8;
  MHD_Connection *pMVar9;
  MHD_Result MVar10;
  undefined4 *puVar11;
  MHD_Daemon *pMVar12;
  MHD_FLAG MVar13;
  MHD_Connection *pMVar14;
  size_t max;
  MHD_thread_ID_ MVar15;
  uint uVar16;
  undefined4 uVar17;
  MHD_Daemon *pMVar18;
  int *piVar19;
  MHD_mutex_ *pMVar20;
  int iVar21;
  MHD_Daemon *unaff_s4;
  MHD_Connection *unaff_s8;
  undefined1 *puVar22;
  epoll_event event;
  
  piVar19 = (int *)PTR___stack_chk_guard_0003d244;
  puVar22 = &_gp;
  iVar2 = *(int *)PTR___stack_chk_guard_0003d244;
  if ((external_add) && (pMVar18 = daemon->worker_pool, pMVar18 != (MHD_Daemon *)0x0)) {
    uVar16 = daemon->worker_pool_size;
    if (uVar16 != 0) {
      if (uVar16 == 0) {
        trap(7);
      }
      pMVar12 = pMVar18 + (uint)client_socket % uVar16;
      uVar3 = client_socket + 1;
      if (pMVar12->connection_limit <= pMVar12->connections) {
        do {
          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;
          if (uVar16 == 0) {
            trap(7);
          }
          pMVar12 = pMVar18 + uVar3 % uVar16;
          uVar3 = uVar3 + 1;
        } while (pMVar12->connection_limit <= pMVar12->connections);
      }
      unaff_s4 = (MHD_Daemon *)
                 internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck);
      goto LAB_00019220;
    }
LAB_000191e0:
    addrlen = (*(code *)PTR_close_0003d128)(client_socket);
    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();
    puVar22 = &_gp;
    if (((MHD_mutex_ *)addrlen != (MHD_mutex_ *)0x0) && (uVar17 = 0x967, *piVar4 == 9))
    goto LAB_000196e8;
LAB_00019214:
    unaff_s4 = (MHD_Daemon *)0x0;
    *piVar4 = 0x17;
    goto LAB_00019220;
  }
  if ((client_socket < 0x400) || ((daemon->options & (MHD_USE_EPOLL|MHD_USE_POLL)) != MHD_NO_FLAG))
  {
    unaff_s4 = daemon;
    if (daemon->connections == daemon->connection_limit) {
LAB_00019504:
      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc);
      addrlen = (*(code *)PTR_close_0003d128)(client_socket);
      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();
      if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) ||
         (uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9))
      goto LAB_00019214;
      goto LAB_000196ec;
    }
    pMVar18 = daemon->master;
    while (pMVar12 = pMVar18, pMVar12 != (MHD_Daemon *)0x0) {
      unaff_s4 = pMVar12;
      pMVar18 = pMVar12->master;
    }
    if (unaff_s4->per_ip_connection_limit != 0) {
      unaff_s8 = (MHD_Connection *)(*(code *)PTR_malloc_0003d1e0)(0x18);
      if (unaff_s8 != (MHD_Connection *)0x0) {
        MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8);
        if (MVar10 == MHD_NO) {
          (*(code *)PTR_free_0003d250)(unaff_s8);
          goto LAB_000192ac;
        }
        pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex;
        pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18);
        if (pMVar12 == (MHD_Daemon *)0x0) {
          puVar11 = (undefined4 *)
                    (*(code *)PTR_tsearch_0003d1a4)
                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);
          if (puVar11 == (undefined4 *)0x0) {
            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);
            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();
            if (iVar21 == 0) {
              (*(code *)PTR_free_0003d250)(unaff_s8);
              goto LAB_00019504;
            }
          }
          else {
            pMVar9 = (MHD_Connection *)*puVar11;
            if (unaff_s8 != pMVar9) {
              (*(code *)PTR_free_0003d250)(unaff_s8);
            }
            puVar1 = PTR_pthread_mutex_unlock_0003d280;
            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {
              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);
              iVar21 = (*(code *)puVar1)();
              if (iVar21 == 0) goto LAB_000192ac;
            }
            else {
              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();
              if (iVar21 == 0) goto LAB_00019504;
            }
          }
          MHD_ip_count_unlock(pMVar18);
          goto LAB_000196b4;
        }
LAB_00019cb4:
        puVar22 = &_gp;
        MHD_ip_count_lock(pMVar12);
        goto LAB_00019cc4;
      }
      goto LAB_00019504;
    }
LAB_000192ac:
    if ((daemon->apc == (MHD_AcceptPolicyCallback)0x0) ||
       (unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),
       unaff_s4 != (MHD_Daemon *)0x0)) {
      unaff_s8 = (MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0);
      if (unaff_s8 == (MHD_Connection *)0x0) {
        piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();
        iVar8 = *piVar4;
        uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);
        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);
        iVar21 = (*(code *)PTR_close_0003d128)(client_socket);
        puVar22 = &_gp;
        if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {
          unaff_s4 = (MHD_Daemon *)0x0;
          MHD_ip_limit_del(daemon,addr,addrlen);
          *piVar4 = iVar8;
          goto LAB_00019220;
        }
      }
      else {
        max = daemon->pool_size;
        unaff_s8->sk_cork_on = true;
        pMVar5 = MHD_pool_create(max);
        unaff_s8->pool = pMVar5;
        puVar1 = PTR_malloc_0003d1e0;
        if (pMVar5 == (MemoryPool *)0x0) {
          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();
          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);
          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);
          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);
          puVar22 = &_gp;
          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {
            unaff_s4 = (MHD_Daemon *)0x0;
            MHD_ip_limit_del(daemon,addr,addrlen);
            (*(code *)PTR_free_0003d250)(unaff_s8);
            *piVar4 = 0xc;
            goto LAB_00019220;
          }
        }
        else {
          unaff_s8->connection_timeout = daemon->connection_timeout;
          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);
          unaff_s8->addr = psVar6;
          if (psVar6 != (sockaddr *)0x0) {
            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);
            unaff_s8->addr_len = addrlen;
            unaff_s8->socket_fd = client_socket;
            unaff_s8->sk_nonblck = non_blck;
            unaff_s8->daemon = daemon;
            tVar7 = MHD_monotonic_sec_counter();
            MVar13 = daemon->options;
            unaff_s8->last_activity = tVar7;
            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {
              iVar21 = 0x16;
              goto LAB_00019374;
            }
            pMVar20 = &daemon->cleanup_connection_mutex;
            MHD_set_http_callbacks_(unaff_s8);
            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);
            uVar17 = 0xa5d;
            if (iVar21 == 0) {
              if (daemon->connections < daemon->connection_limit) {
                daemon->connections = daemon->connections + 1;
                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {
                  pMVar9 = daemon->normal_timeout_head;
                  pMVar14 = daemon->normal_timeout_tail;
                  unaff_s8->prevX = (MHD_Connection *)0x0;
                  unaff_s8->nextX = pMVar9;
                  if (pMVar14 == (MHD_Connection *)0x0) {
                    daemon->normal_timeout_tail = unaff_s8;
                  }
                  else {
                    pMVar9->prevX = unaff_s8;
                  }
                  daemon->normal_timeout_head = unaff_s8;
                }
                pMVar9 = daemon->connections_head;
                pMVar14 = daemon->connections_tail;
                unaff_s8->prev = (MHD_Connection *)0x0;
                unaff_s8->next = pMVar9;
                if (pMVar14 == (MHD_Connection *)0x0) {
                  daemon->connections_tail = unaff_s8;
                }
                else {
                  pMVar9->prev = unaff_s8;
                }
                puVar1 = PTR_pthread_mutex_unlock_0003d280;
                daemon->connections_head = unaff_s8;
                iVar21 = (*(code *)puVar1)(pMVar20);
                uVar17 = 0xa7b;
                if (iVar21 == 0) {
                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {
                    (*daemon->notify_connection)
                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,
                               MHD_CONNECTION_NOTIFY_STARTED);
                  }
                  MVar13 = daemon->options;
                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {
                    MVar15 = (daemon->pid).ID;
                    (unaff_s8->pid).handle = (daemon->pid).handle;
                    (unaff_s8->pid).ID = MVar15;
                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {
LAB_00019b50:
                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&
                          (iVar21 = (*(code *)PTR_write_0003d1b0)
                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&
                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb
                         )) {
                        unaff_s4 = (MHD_Daemon *)0x1;
                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);
                        goto LAB_00019220;
                      }
LAB_00019b00:
                      unaff_s4 = (MHD_Daemon *)0x1;
                      goto LAB_00019220;
                    }
                  }
                  else {
                    iVar21 = MHD_create_named_thread_
                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,
                                        daemon->thread_stack_size,
                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),
                                        unaff_s8);
                    if (iVar21 == 0) {
                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();
                      iVar21 = *piVar4;
                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);
                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);
                      goto LAB_00019374;
                    }
                    MVar13 = daemon->options;
                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {
                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)
                      goto LAB_00019b50;
                      goto LAB_00019b00;
                    }
                  }
                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {
                    pMVar9 = daemon->eready_head;
                    pMVar14 = daemon->eready_tail;
                    unaff_s8->prevE = (MHD_Connection *)0x0;
                    unaff_s8->epoll_state =
                         unaff_s8->epoll_state |
                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|
                         MHD_EPOLL_STATE_READ_READY);
                    unaff_s8->nextE = pMVar9;
                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;
                    pMVar9->prevE = unaff_s8;
                    unaff_s4 = (MHD_Daemon *)0x1;
                    daemon->eready_head = unaff_s8;
                    goto LAB_00019220;
                  }
                  event.events = 0x80000007;
                  event.data.fd = (int)unaff_s8;
                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)
                                     (daemon->epoll_fd,1,client_socket,&event);
                  if (iVar21 == 0) {
                    unaff_s4 = (MHD_Daemon *)0x1;
                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;
                    goto LAB_00019220;
                  }
                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();
                  iVar21 = *piVar4;
                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);
                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);
LAB_00019374:
                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {
                    (*daemon->notify_connection)
                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,
                               MHD_CONNECTION_NOTIFY_CLOSED);
                  }
                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);
                  if (iVar8 != 0) {
                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();
                    uVar17 = 0xad2;
                    if (*piVar4 == 9) goto LAB_000196e8;
                  }
                  pMVar20 = &daemon->cleanup_connection_mutex;
                  MHD_ip_limit_del(daemon,addr,addrlen);
                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);
                  addrlen = (socklen_t)pMVar20;
                  if (iVar8 != 0) {
                    uVar17 = 0xad7;
                    goto LAB_00019c68;
                  }
                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {
                    pMVar9 = unaff_s8->nextX;
                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {
                      daemon->normal_timeout_head = pMVar9;
                      pMVar14 = (MHD_Connection *)0x0;
                    }
                    else {
                      unaff_s8->prevX->nextX = pMVar9;
                      pMVar9 = unaff_s8->nextX;
                      pMVar14 = unaff_s8->prevX;
                    }
                    if (pMVar9 == (MHD_Connection *)0x0) {
                      daemon->normal_timeout_tail = pMVar14;
                    }
                    else {
                      pMVar9->prevX = pMVar14;
                    }
                    unaff_s8->nextX = (MHD_Connection *)0x0;
                    unaff_s8->prevX = (MHD_Connection *)0x0;
                  }
                  pMVar9 = unaff_s8->next;
                  if (unaff_s8->prev == (MHD_Connection *)0x0) {
                    daemon->connections_head = pMVar9;
                    pMVar14 = (MHD_Connection *)0x0;
                  }
                  else {
                    unaff_s8->prev->next = pMVar9;
                    pMVar9 = unaff_s8->next;
                    pMVar14 = unaff_s8->prev;
                  }
                  if (pMVar9 == (MHD_Connection *)0x0) {
                    daemon->connections_tail = pMVar14;
                  }
                  else {
                    pMVar9->prev = pMVar14;
                  }
                  puVar1 = PTR_pthread_mutex_unlock_0003d280;
                  unaff_s8->next = (MHD_Connection *)0x0;
                  unaff_s8->prev = (MHD_Connection *)0x0;
                  iVar8 = (*(code *)puVar1)(pMVar20);
                  if (iVar8 == 0) {
                    MHD_pool_destroy(unaff_s8->pool);
                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);
                    (*(code *)PTR_free_0003d250)(unaff_s8);
                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();
                    if (iVar21 != 0) {
                      *piVar4 = iVar21;
                      unaff_s4 = (MHD_Daemon *)0x0;
                      goto LAB_00019220;
                    }
                    goto LAB_000195a8;
                  }
                  goto LAB_00019c8c;
                }
              }
              else {
                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);
                uVar17 = 0xa63;
                if (iVar21 == 0) {
                  iVar21 = 0x17;
                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);
                  goto LAB_00019374;
                }
              }
            }
            else {
LAB_00019c68:
              (**(code **)PTR_mhd_panic_0003d03c)
                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17
                         ,PTR_DAT_0003d02c + -0x62c0);
LAB_00019c8c:
              uVar17 = 0xae3;
            }
            pMVar12 = (MHD_Daemon *)
                      (**(code **)PTR_mhd_panic_0003d03c)
                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,
                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);
            goto LAB_00019cb4;
          }
          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();
          iVar8 = *piVar4;
          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);
          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);
          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);
          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {
            unaff_s4 = (MHD_Daemon *)0x0;
            MHD_ip_limit_del(daemon,addr,addrlen);
            MHD_pool_destroy(unaff_s8->pool);
            (*(code *)PTR_free_0003d250)(unaff_s8);
            *piVar4 = iVar8;
            goto LAB_00019220;
          }
        }
      }
      goto LAB_000196e8;
    }
LAB_000196b4:
    iVar21 = (*(code *)PTR_close_0003d128)(client_socket);
    if (iVar21 != 0) {
      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();
      uVar17 = 0x9b8;
      puVar22 = &_gp;
      if (*piVar4 == 9) goto LAB_000196e8;
    }
  }
  else {
    MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4c5c,client_socket,0x400);
    addrlen = (*(code *)PTR_close_0003d128)(client_socket);
    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();
    puVar22 = &_gp;
    if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) || (*piVar4 != 9)) {
LAB_000195a8:
      unaff_s4 = (MHD_Daemon *)0x0;
      *piVar4 = 0x16;
      goto LAB_00019220;
    }
LAB_00019cc4:
    uVar17 = 0x979;
LAB_000196e8:
    puVar11 = *(undefined4 **)(puVar22 + -0x7fc8);
LAB_000196ec:
    (*(code *)**(undefined4 **)(puVar22 + -0x7fc4))
              (*puVar11,*(int *)(puVar22 + -0x7fd4) + -0x51b0,uVar17,
               *(int *)(puVar22 + -0x7fd4) + -0x4cfc);
  }
  MHD_ip_limit_del(daemon,addr,addrlen);
LAB_00019220:
  while (iVar2 != *piVar19) {
    (*(code *)PTR___stack_chk_fail_0003d21c)();
LAB_00019c54:
    daemon->eready_tail = unaff_s8;
    unaff_s4 = (MHD_Daemon *)0x1;
    daemon->eready_head = unaff_s8;
  }
  return (MHD_Result)unaff_s4;
}



int FUN_000190fc(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,
                undefined1 param_6)

{
  undefined *puVar1;
  uint uVar2;
  int *piVar3;
  undefined4 *puVar4;
  int iVar5;
  int iVar6;
  uint uVar7;
  undefined4 uVar8;
  int iVar9;
  int *piVar10;
  int iVar11;
  int unaff_s4;
  int *unaff_s8;
  undefined1 *puVar12;
  undefined4 local_40 [2];
  int *local_38;
  int local_2c;
  
  piVar10 = (int *)PTR___stack_chk_guard_0003d244;
  puVar12 = &_gp_1;
  local_2c = *(int *)PTR___stack_chk_guard_0003d244;
  if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {
    uVar7 = *(uint *)(param_1 + 0x88);
    if (uVar7 != 0) {
      if (uVar7 == 0) {
        trap(7);
      }
      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;
      uVar2 = param_2 + 1;
      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {
        do {
          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;
          if (uVar7 == 0) {
            trap(7);
          }
          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;
          uVar2 = uVar2 + 1;
        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));
      }
      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);
      goto LAB_00019220;
    }
LAB_000191e0:
    param_4 = (*(code *)PTR_close_0003d128)(param_2);
    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
    puVar12 = &_gp_1;
    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;
LAB_00019214:
    unaff_s4 = 0;
    *piVar3 = 0x17;
    goto LAB_00019220;
  }
  if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {
    unaff_s4 = param_1;
    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {
LAB_00019504:
      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);
      param_4 = (*(code *)PTR_close_0003d128)(param_2);
      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))
      goto LAB_00019214;
      goto LAB_000196ec;
    }
    iVar9 = *(int *)(param_1 + 0x70);
    while (iVar6 = iVar9, iVar6 != 0) {
      unaff_s4 = iVar6;
      iVar9 = *(int *)(iVar6 + 0x70);
    }
    if (*(int *)(unaff_s4 + 0xf0) != 0) {
      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);
      if (unaff_s8 != (int *)0x0) {
        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);
        if (iVar9 == 0) {
          (*(code *)PTR_free_0003d250)(unaff_s8);
          goto LAB_000192ac;
        }
        iVar9 = unaff_s4 + 0x94;
        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);
        if (iVar6 == 0) {
          puVar4 = (undefined4 *)
                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);
          if (puVar4 == (undefined4 *)0x0) {
            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);
            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);
            if (iVar9 == 0) {
              (*(code *)PTR_free_0003d250)(unaff_s8);
              goto LAB_00019504;
            }
          }
          else {
            piVar3 = (int *)*puVar4;
            if (unaff_s8 != piVar3) {
              (*(code *)PTR_free_0003d250)(unaff_s8);
            }
            puVar1 = PTR_pthread_mutex_unlock_0003d280;
            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {
              piVar3[5] = piVar3[5] + 1;
              iVar9 = (*(code *)puVar1)(iVar9);
              if (iVar9 == 0) goto LAB_000192ac;
            }
            else {
              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);
              if (iVar9 == 0) goto LAB_00019504;
            }
          }
          FUN_000120c0();
          goto LAB_000196b4;
        }
LAB_00019cb4:
        puVar12 = &_gp_1;
        entry();
        goto LAB_00019cc4;
      }
      goto LAB_00019504;
    }
LAB_000192ac:
    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||
       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),
       unaff_s4 != 0)) {
      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);
      if (unaff_s8 == (int *)0x0) {
        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
        iVar6 = *piVar3;
        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);
        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);
        iVar9 = (*(code *)PTR_close_0003d128)(param_2);
        puVar12 = &_gp_1;
        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {
          unaff_s4 = 0;
          FUN_0001871c(param_1,param_3,param_4);
          *piVar3 = iVar6;
          goto LAB_00019220;
        }
      }
      else {
        uVar8 = *(undefined4 *)(param_1 + 0x7c);
        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;
        iVar9 = FUN_0001ea3c(uVar8);
        unaff_s8[10] = iVar9;
        puVar1 = PTR_malloc_0003d1e0;
        if (iVar9 == 0) {
          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);
          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);
          iVar9 = (*(code *)PTR_close_0003d128)(param_2);
          puVar12 = &_gp_1;
          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {
            unaff_s4 = 0;
            FUN_0001871c(param_1,param_3,param_4);
            (*(code *)PTR_free_0003d250)(unaff_s8);
            *piVar3 = 0xc;
            goto LAB_00019220;
          }
        }
        else {
          unaff_s8[0x26] = *(int *)(param_1 + 0xec);
          iVar9 = (*(code *)puVar1)(param_4);
          unaff_s8[0x15] = iVar9;
          if (iVar9 != 0) {
            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);
            unaff_s8[0x24] = param_4;
            unaff_s8[0x29] = param_2;
            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;
            unaff_s8[6] = param_1;
            iVar9 = FUN_0001f07c();
            uVar7 = *(uint *)(param_1 + 0xf4);
            unaff_s8[0x25] = iVar9;
            if ((uVar7 & 2) != 0) {
              iVar9 = 0x16;
              goto LAB_00019374;
            }
            iVar6 = param_1 + 0xac;
            FUN_00014e60(unaff_s8);
            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);
            uVar8 = 0xa5d;
            if (iVar9 == 0) {
              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {
                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;
                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {
                  iVar9 = *(int *)(param_1 + 0x30);
                  iVar11 = *(int *)(param_1 + 0x34);
                  unaff_s8[5] = 0;
                  unaff_s8[4] = iVar9;
                  if (iVar11 == 0) {
                    *(int **)(param_1 + 0x34) = unaff_s8;
                  }
                  else {
                    *(int **)(iVar9 + 0x14) = unaff_s8;
                  }
                  *(int **)(param_1 + 0x30) = unaff_s8;
                }
                iVar9 = *(int *)(param_1 + 8);
                iVar11 = *(int *)(param_1 + 0xc);
                unaff_s8[3] = 0;
                unaff_s8[2] = iVar9;
                if (iVar11 == 0) {
                  *(int **)(param_1 + 0xc) = unaff_s8;
                }
                else {
                  *(int **)(iVar9 + 0xc) = unaff_s8;
                }
                puVar1 = PTR_pthread_mutex_unlock_0003d280;
                *(int **)(param_1 + 8) = unaff_s8;
                iVar9 = (*(code *)puVar1)(iVar6);
                uVar8 = 0xa7b;
                if (iVar9 == 0) {
                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {
                    (**(code **)(param_1 + 0x50))
                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);
                  }
                  uVar7 = *(uint *)(param_1 + 0xf4);
                  if ((uVar7 & 4) == 0) {
                    iVar9 = *(int *)(param_1 + 0x90);
                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);
                    unaff_s8[0x17] = iVar9;
                    if ((uVar7 & 0x200) == 0) {
LAB_00019b50:
                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&
                          (iVar9 = (*(code *)PTR_write_0003d1b0)
                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)
                          , iVar9 < 1)) &&
                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb
                         )) {
                        unaff_s4 = 1;
                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);
                        goto LAB_00019220;
                      }
LAB_00019b00:
                      unaff_s4 = 1;
                      goto LAB_00019220;
                    }
                  }
                  else {
                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,
                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,
                                         unaff_s8);
                    if (iVar9 == 0) {
                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
                      iVar9 = *piVar3;
                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);
                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);
                      goto LAB_00019374;
                    }
                    uVar7 = *(uint *)(param_1 + 0xf4);
                    if ((uVar7 & 0x200) == 0) {
                      if ((uVar7 & 4) == 0) goto LAB_00019b50;
                      goto LAB_00019b00;
                    }
                  }
                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {
                    iVar9 = *(int *)(param_1 + 0x20);
                    iVar6 = *(int *)(param_1 + 0x24);
                    unaff_s8[1] = 0;
                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;
                    *unaff_s8 = iVar9;
                    if (iVar6 == 0) goto LAB_00019c54;
                    *(int **)(iVar9 + 4) = unaff_s8;
                    unaff_s4 = 1;
                    *(int **)(param_1 + 0x20) = unaff_s8;
                    goto LAB_00019220;
                  }
                  local_40[0] = 0x80000007;
                  local_38 = unaff_s8;
                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)
                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);
                  if (iVar9 == 0) {
                    unaff_s4 = 1;
                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;
                    goto LAB_00019220;
                  }
                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
                  iVar9 = *piVar3;
                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);
                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);
LAB_00019374:
                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {
                    (**(code **)(param_1 + 0x50))
                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);
                  }
                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);
                  if (iVar6 != 0) {
                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
                    uVar8 = 0xad2;
                    if (*piVar3 == 9) goto LAB_000196e8;
                  }
                  iVar11 = param_1 + 0xac;
                  FUN_0001871c(param_1,param_3,param_4);
                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);
                  param_4 = iVar11;
                  if (iVar6 != 0) {
                    uVar8 = 0xad7;
                    goto LAB_00019c68;
                  }
                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {
                    iVar6 = unaff_s8[4];
                    if (unaff_s8[5] == 0) {
                      *(int *)(param_1 + 0x30) = iVar6;
                      iVar5 = 0;
                    }
                    else {
                      *(int *)(unaff_s8[5] + 0x10) = iVar6;
                      iVar6 = unaff_s8[4];
                      iVar5 = unaff_s8[5];
                    }
                    if (iVar6 == 0) {
                      *(int *)(param_1 + 0x34) = iVar5;
                    }
                    else {
                      *(int *)(iVar6 + 0x14) = iVar5;
                    }
                    unaff_s8[4] = 0;
                    unaff_s8[5] = 0;
                  }
                  iVar6 = unaff_s8[2];
                  if (unaff_s8[3] == 0) {
                    *(int *)(param_1 + 8) = iVar6;
                    iVar5 = 0;
                  }
                  else {
                    *(int *)(unaff_s8[3] + 8) = iVar6;
                    iVar6 = unaff_s8[2];
                    iVar5 = unaff_s8[3];
                  }
                  if (iVar6 == 0) {
                    *(int *)(param_1 + 0xc) = iVar5;
                  }
                  else {
                    *(int *)(iVar6 + 0xc) = iVar5;
                  }
                  puVar1 = PTR_pthread_mutex_unlock_0003d280;
                  unaff_s8[2] = 0;
                  unaff_s8[3] = 0;
                  iVar6 = (*(code *)puVar1)(iVar11);
                  if (iVar6 == 0) {
                    FUN_0001eb80(unaff_s8[10]);
                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);
                    (*(code *)PTR_free_0003d250)(unaff_s8);
                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
                    if (iVar9 != 0) {
                      *piVar3 = iVar9;
                      unaff_s4 = 0;
                      goto LAB_00019220;
                    }
                    goto LAB_000195a8;
                  }
                  goto LAB_00019c8c;
                }
              }
              else {
                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);
                uVar8 = 0xa63;
                if (iVar9 == 0) {
                  iVar9 = 0x17;
                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);
                  goto LAB_00019374;
                }
              }
            }
            else {
LAB_00019c68:
              (**(code **)PTR_DAT_0003d03c)
                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,
                         PTR_DAT_0003d02c + -0x62c0);
LAB_00019c8c:
              uVar8 = 0xae3;
            }
            (**(code **)PTR_DAT_0003d03c)
                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,
                       PTR_DAT_0003d02c + -0x6298);
            goto LAB_00019cb4;
          }
          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
          iVar6 = *piVar3;
          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);
          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);
          iVar9 = (*(code *)PTR_close_0003d128)(param_2);
          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {
            unaff_s4 = 0;
            FUN_0001871c(param_1,param_3,param_4);
            FUN_0001eb80(unaff_s8[10]);
            (*(code *)PTR_free_0003d250)(unaff_s8);
            *piVar3 = iVar6;
            goto LAB_00019220;
          }
        }
      }
      goto LAB_000196e8;
    }
LAB_000196b4:
    iVar9 = (*(code *)PTR_close_0003d128)(param_2);
    if (iVar9 != 0) {
      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
      uVar8 = 0x9b8;
      puVar12 = &_gp_1;
      if (*piVar3 == 9) goto LAB_000196e8;
    }
  }
  else {
    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);
    param_4 = (*(code *)PTR_close_0003d128)(param_2);
    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
    puVar12 = &_gp_1;
    if ((param_4 == 0) || (*piVar3 != 9)) {
LAB_000195a8:
      unaff_s4 = 0;
      *piVar3 = 0x16;
      goto LAB_00019220;
    }
LAB_00019cc4:
    uVar8 = 0x979;
LAB_000196e8:
    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);
LAB_000196ec:
    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))
              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,
               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);
  }
  FUN_0001871c(param_1,param_3,param_4);
LAB_00019220:
  while (local_2c != *piVar10) {
    (*(code *)PTR___stack_chk_fail_0003d21c)();
LAB_00019c54:
    *(int **)(param_1 + 0x24) = unaff_s8;
    unaff_s4 = 1;
    *(int **)(param_1 + 0x20) = unaff_s8;
  }
  return unaff_s4;
}


lui gp,0x3
addiu gp,gp,-0x40fc
addu gp,gp,t9
addiu sp,sp,-0x68
sw s0,0x40(sp)
sw s7,0x5c(sp)
sw s6,0x58(sp)
or s6,a1,zero
sw s5,0x54(sp)
or s5,a0,zero
sw s3,0x4c(sp)
sw s2,0x48(sp)
or s2,a2,zero
sw s1,0x44(sp)
or s1,a3,zero
sw gp,0x18(sp)
sw ra,0x64(sp)
sw s8,0x60(sp)
sw s4,0x50(sp)
lw s0,-0x7dbc(gp)
lbu s7,0x7b(sp)
lbu s3,0x7f(sp)
lw v0,0x0(s0)
sw v0,0x3c(sp)
beq s7,zero,0x00019260
_slti v0,s6,0x400
lw a3,0x74(a0)
beq a3,zero,0x00019260
_nop
lw a1,0x88(a0)
beq a1,zero,0x000191e0
_li v0,0x130
teq a1,zero
divu s6,a1
mfhi a0
mul v1,a0,v0
addu a0,v1,a3
lw v0,0xe4(a0)
lw v1,0xe8(a0)
sltu v0,v0,v1
bne v0,zero,0x000195b8
_addiu v0,s6,0x1
addu t0,s6,a1
b 0x000191d8
_li t1,0x130
teq a1,zero
divu v0,a1
mfhi a0
mul v1,a0,t1
addu a0,v1,a3
lw v1,0xe4(a0)
lw a2,0xe8(a0)
sltu v1,v1,a2
bne v1,zero,0x000195b8
_addiu v0,v0,0x1
bne t0,v0,0x000191b0
_nop
lw t9,-0x7ed8(gp)
jalr t9
_or a0,s6,zero
lw gp,0x18(sp)
lw t9,-0x7e68(gp)
jalr t9
_or s1,v0,zero
beq s1,zero,0x00019214
_lw gp,0x18(sp)
lw a0,0x0(v0)
li v1,0x9
beq a0,v1,0x000196e8
_li a2,0x967
li v1,0x17
or s4,zero,zero
sw v1,0x0(v0)
lw a0,0x3c(sp)
or v0,s4,zero
lw v1,0x0(s0)
bne a0,v1,0x00019c48
_lw ra,0x64(sp)
lw s8,0x60(sp)
lw s7,0x5c(sp)
lw s6,0x58(sp)
lw s5,0x54(sp)
lw s4,0x50(sp)
lw s3,0x4c(sp)
lw s2,0x48(sp)
lw s1,0x44(sp)
lw s0,0x40(sp)
jr ra
_addiu sp,sp,0x68
bne v0,zero,0x00019278
_nop
lw v0,0xf4(s5)
andi v0,v0,0x240
beq v0,zero,0x00019558
_lw a1,-0x7fd4(gp)
lw v1,0xe4(s5)
lw v0,0xe8(s5)
beq v1,v0,0x00019504
_or s4,s5,zero
b 0x00019298
_lw v0,0x70(s4)
or s4,v0,zero
lw v0,0x70(s4)
bne v0,zero,0x00019290
_nop
lw v0,0xf0(s4)
bne v0,zero,0x000195e8
_lw t9,-0x7e20(gp)
lw t9,0x40(s5)
beq t9,zero,0x000192d0
_or a2,s1,zero
lw a0,0x44(s5)
jalr t9
_or a1,s2,zero
lw gp,0x18(sp)
beq v0,zero,0x000196b4
_or s4,v0,zero
lw t9,-0x7ee0(gp)
li a1,0xf0
jalr t9
_li a0,0x1
lw gp,0x18(sp)
beq v0,zero,0x000197f0
_or s8,v0,zero
lw t9,-0x7fa0(gp)
li v0,0x1
lw a0,0x7c(s5)
bal 0x0001ea3c
_sb v0,0xa9(s8)
lw gp,0x18(sp)
beq v0,zero,0x00019880
_sw v0,0x28(s8)
lw v0,0xec(s5)
or a0,s1,zero
lw t9,-0x7e20(gp)
jalr t9
_sw v0,0x98(s8)
lw gp,0x18(sp)
beq v0,zero,0x00019740
_sw v0,0x54(s8)
lw t9,-0x7db8(gp)
or a2,s1,zero
or a1,s2,zero
jalr t9
_or a0,v0,zero
lw gp,0x18(sp)
sw s1,0x90(s8)
sw s6,0xa4(s8)
sb s3,0xa8(s8)
lw t9,-0x7fcc(gp)
bal 0x0001f07c
_sw s5,0x18(s8)
lw v1,0xf4(s5)
lw gp,0x18(sp)
andi v1,v1,0x2
beq v1,zero,0x00019938
_sw v0,0x94(s8)
li s3,0x16
lw t9,0x50(s5)
beq t9,zero,0x00019394
_li a3,0x1
lw a0,0x54(s5)
addiu a2,s8,0x30
jalr t9
_or a1,s8,zero
lw gp,0x18(sp)
lw t9,-0x7ed8(gp)
jalr t9
_or a0,s6,zero
beq v0,zero,0x000193c8
_lw gp,0x18(sp)
lw t9,-0x7e68(gp)
jalr t9
_nop
li v1,0x9
lw v0,0x0(v0)
li a2,0xad2
beq v0,v1,0x000196e8
_lw gp,0x18(sp)
lw t9,-0x7fac(gp)
or a2,s1,zero
or a0,s5,zero
or a1,s2,zero
addiu t9,t9,-0x78e4
bal 0x0001871c
_addiu s1,s5,0xac
lw gp,0x18(sp)
lw t9,-0x7df0(gp)
jalr t9
_or a0,s1,zero
bne v0,zero,0x00019c64
_lw gp,0x18(sp)
lw v0,0xf4(s5)
andi v0,v0,0x4
bne v0,zero,0x00019438
_nop
lw v1,0x14(s8)
beq v1,zero,0x00019a78
_lw v0,0x10(s8)
sw v0,0x10(v1)
lw v0,0x10(s8)
lw v1,0x14(s8)
beq v0,zero,0x00019a70
_nop
sw v1,0x14(v0)
sw zero,0x10(s8)
sw zero,0x14(s8)
lw v1,0xc(s8)
beq v1,zero,0x00019a68
_lw v0,0x8(s8)
sw v0,0x8(v1)
lw v0,0x8(s8)
lw v1,0xc(s8)
beq v0,zero,0x00019a60
_nop
sw v1,0xc(v0)
lw t9,-0x7d80(gp)
or a0,s1,zero
sw zero,0x8(s8)
jalr t9
_sw zero,0xc(s8)
bne v0,zero,0x00019c8c
_lw gp,0x18(sp)
lw t9,-0x7fa8(gp)
bal 0x0001eb80
_lw a0,0x28(s8)
lw gp,0x18(sp)
lw t9,-0x7db0(gp)
jalr t9
_lw a0,0x54(s8)
lw gp,0x18(sp)
lw t9,-0x7db0(gp)
jalr t9
_or a0,s8,zero
lw gp,0x18(sp)
lw t9,-0x7e68(gp)
jalr t9
_nop
beq s3,zero,0x000195a8
_lw gp,0x18(sp)
sw s3,0x0(v0)
b 0x00019220
_or s4,zero,zero
lw a1,-0x7fd4(gp)
or a0,s4,zero
lw t9,-0x7fd0(gp)
bal 0x0001e5b0
_addiu a1,a1,-0x4c28
lw gp,0x18(sp)
lw t9,-0x7d80(gp)
jalr t9
_lw a0,0x20(sp)
bne v0,zero,0x000196a4
_lw gp,0x18(sp)
lw t9,-0x7db0(gp)
jalr t9
_or a0,s8,zero
lw gp,0x18(sp)
lw a1,-0x7fd4(gp)
or a0,s5,zero
lw t9,-0x7fd0(gp)
bal 0x0001e5b0
_addiu a1,a1,-0x4bfc
lw gp,0x18(sp)
lw t9,-0x7ed8(gp)
jalr t9
_or a0,s6,zero
lw gp,0x18(sp)
lw t9,-0x7e68(gp)
jalr t9
_or s1,v0,zero
beq s1,zero,0x00019214
_lw gp,0x18(sp)
lw a0,0x0(v0)
li v1,0x9
bne a0,v1,0x00019214
_li a2,0x9a5
b 0x000196ec
_lw v0,-0x7fc8(gp)
li a3,0x400
lw t9,-0x7fd0(gp)
or a2,s6,zero
or a0,s5,zero
bal 0x0001e5b0
_addiu a1,a1,-0x4c5c
lw gp,0x18(sp)
lw t9,-0x7ed8(gp)
jalr t9
_or a0,s6,zero
lw gp,0x18(sp)
lw t9,-0x7e68(gp)
jalr t9
_or s1,v0,zero
beq s1,zero,0x000195a8
_lw gp,0x18(sp)
lw a0,0x0(v0)
li v1,0x9
beq a0,v1,0x00019cc4
_nop
li v1,0x16
or s4,zero,zero
b 0x00019220
_sw v1,0x0(v0)
lw t9,-0x7fac(gp)
li v0,0x1
sw s3,0x14(sp)
or a3,s1,zero
sw v0,0x10(sp)
or a2,s2,zero
addiu t9,t9,-0x6f04
bal 0x000190fc
_or a1,s6,zero
lw gp,0x18(sp)
b 0x00019220
_or s4,v0,zero
jalr t9
_li a0,0x18
lw gp,0x18(sp)
beq v0,zero,0x00019504
_or s8,v0,zero
lw t9,-0x7fac(gp)
or a2,v0,zero
or a1,s1,zero
addiu t9,t9,-0x7af4
bal 0x0001850c
_or a0,s2,zero
beq v0,zero,0x0001972c
_lw gp,0x18(sp)
lw t9,-0x7df0(gp)
addiu v0,s4,0x94
sw v0,0x20(sp)
jalr t9
_or a0,v0,zero
bne v0,zero,0x00019cb4
_lw gp,0x18(sp)
lw a2,-0x7fd8(gp)
addiu a1,s4,0x78
lw t9,-0x7e5c(gp)
or a0,s8,zero
jalr t9
_addiu a2,a2,0x7760
beq v0,zero,0x000194c8
_lw gp,0x18(sp)
lw a1,0x0(v0)
beq s8,a1,0x00019678
_lw t9,-0x7db0(gp)
or a0,s8,zero
jalr t9
_sw a1,0x24(sp)
lw gp,0x18(sp)
lw a1,0x24(sp)
lw v1,0x14(a1)
lw v0,0xf0(s4)
sltu v0,v1,v0
beq v0,zero,0x00019920
_lw t9,-0x7d80(gp)
addiu v1,v1,0x1
lw a0,0x20(sp)
jalr t9
_sw v1,0x14(a1)
beq v0,zero,0x000192ac
_lw gp,0x18(sp)
lw t9,-0x7fd8(gp)
addiu t9,t9,0x20c0
bal 0x000120c0
_nop
lw t9,-0x7ed8(gp)
jalr t9
_or a0,s6,zero
beq v0,zero,0x0001970c
_lw gp,0x18(sp)
lw t9,-0x7e68(gp)
jalr t9
_nop
li v1,0x9
lw v0,0x0(v0)
li a2,0x9b8
bne v0,v1,0x0001970c
_lw gp,0x18(sp)
lw v0,-0x7fc8(gp)
lw a3,-0x7fd4(gp)
lw a1,-0x7fd4(gp)
lw a0,0x0(v0)
addiu a3,a3,-0x4cfc
lw v0,-0x7fc4(gp)
lw t9,0x0(v0)
jalr t9
_addiu a1,a1,-0x51b0
lw t9,-0x7fac(gp)
or a2,s1,zero
or a1,s2,zero
addiu t9,t9,-0x78e4
bal 0x0001871c
_or a0,s5,zero
b 0x00019220
_lw gp,0x18(sp)
lw t9,-0x7db0(gp)
jalr t9
_or a0,s8,zero
b 0x000192ac
_lw gp,0x18(sp)
lw t9,-0x7e68(gp)
jalr t9
_nop
lw gp,0x18(sp)
or s7,v0,zero
lw s3,0x0(v0)
lw t9,-0x7e24(gp)
jalr t9
_or a0,s3,zero
or a0,s5,zero
lw gp,0x18(sp)
or a2,v0,zero
lw a1,-0x7fd4(gp)
lw t9,-0x7fd0(gp)
bal 0x0001e5b0
_addiu a1,a1,-0x4bbc
lw gp,0x18(sp)
lw t9,-0x7ed8(gp)
jalr t9
_or a0,s6,zero
beq v0,zero,0x000197a8
_lw gp,0x18(sp)
lw v1,0x0(s7)
li v0,0x9
beq v1,v0,0x000196e8
_li a2,0x9ee
lw t9,-0x7fac(gp)
or a2,s1,zero
or a1,s2,zero
or a0,s5,zero
addiu t9,t9,-0x78e4
bal 0x0001871c
_or s4,zero,zero
lw gp,0x18(sp)
lw t9,-0x7fa8(gp)
bal 0x0001eb80
_lw a0,0x28(s8)
lw gp,0x18(sp)
lw t9,-0x7db0(gp)
jalr t9
_or a0,s8,zero
lw gp,0x18(sp)
b 0x00019220
_sw s3,0x0(s7)
lw t9,-0x7e68(gp)
jalr t9
_nop
lw gp,0x18(sp)
or s7,v0,zero
lw s3,0x0(v0)
lw t9,-0x7e24(gp)
jalr t9
_or a0,s3,zero
or a0,s5,zero
lw gp,0x18(sp)
or a2,v0,zero
lw a1,-0x7fd4(gp)
lw t9,-0x7fd0(gp)
bal 0x0001e5b0
_addiu a1,a1,-0x4bbc
lw gp,0x18(sp)
lw t9,-0x7ed8(gp)
jalr t9
_or a0,s6,zero
beq v0,zero,0x00019858
_lw gp,0x18(sp)
lw v1,0x0(s7)
li v0,0x9
beq v1,v0,0x000196e8
_li a2,0x9ca
lw t9,-0x7fac(gp)
or a2,s1,zero
or a1,s2,zero
or a0,s5,zero
addiu t9,t9,-0x78e4
bal 0x0001871c
_or s4,zero,zero
lw gp,0x18(sp)
b 0x00019220
_sw s3,0x0(s7)
lw t9,-0x7e68(gp)
jalr t9
_nop
lw gp,0x18(sp)
or s3,v0,zero
lw t9,-0x7e24(gp)
jalr t9
_lw a0,0x0(v0)
or a0,s5,zero
lw gp,0x18(sp)
or a2,v0,zero
lw a1,-0x7fd4(gp)
lw t9,-0x7fd0(gp)
bal 0x0001e5b0
_addiu a1,a1,-0x4bbc
lw gp,0x18(sp)
lw t9,-0x7ed8(gp)
jalr t9
_or a0,s6,zero
beq v0,zero,0x000198e4
_lw gp,0x18(sp)
lw v1,0x0(s3)
li v0,0x9
beq v1,v0,0x000196e8
_li a2,0x9da
lw t9,-0x7fac(gp)
or a0,s5,zero
or a2,s1,zero
or a1,s2,zero
addiu t9,t9,-0x78e4
bal 0x0001871c
_or s4,zero,zero
lw gp,0x18(sp)
lw t9,-0x7db0(gp)
jalr t9
_or a0,s8,zero
li v0,0xc
lw gp,0x18(sp)
b 0x00019220
_sw v0,0x0(s3)
jalr t9
_lw a0,0x20(sp)
beq v0,zero,0x00019504
_lw gp,0x18(sp)
b 0x000196a8
_lw t9,-0x7fd8(gp)
lw t9,-0x7f9c(gp)
or a0,s8,zero
bal 0x00014e60
_addiu s3,s5,0xac
lw gp,0x18(sp)
lw t9,-0x7df0(gp)
jalr t9
_or a0,s3,zero
li a2,0xa5d
bne v0,zero,0x00019c68
_lw gp,0x18(sp)
lw v1,0xe4(s5)
lw v0,0xe8(s5)
sltu v0,v1,v0
beq v0,zero,0x00019a80
_addiu v1,v1,0x1
lw v0,0xf4(s5)
andi v0,v0,0x4
bne v0,zero,0x000199a4
_sw v1,0xe4(s5)
lw v0,0x30(s5)
lw v1,0x34(s5)
sw zero,0x14(s8)
beq v1,zero,0x00019bb8
_sw v0,0x10(s8)
sw s8,0x14(v0)
sw s8,0x30(s5)
lw v0,0x8(s5)
lw v1,0xc(s5)
sw zero,0xc(s8)
beq v1,zero,0x00019b08
_sw v0,0x8(s8)
sw s8,0xc(v0)
lw t9,-0x7d80(gp)
or a0,s3,zero
jalr t9
_sw s8,0x8(s5)
li a2,0xa7b
bne v0,zero,0x00019c90
_lw gp,0x18(sp)
lw t9,0x50(s5)
beq t9,zero,0x000199f8
_or a3,zero,zero
lw a0,0x54(s5)
addiu a2,s8,0x30
jalr t9
_or a1,s8,zero
lw gp,0x18(sp)
lw v0,0xf4(s5)
andi v1,v0,0x4
bne v1,zero,0x00019ab8
_andi v1,v0,0x200
lw a1,0x8c(s5)
lw a0,0x90(s5)
sw a1,0x58(s8)
beq v1,zero,0x00019b50
_sw a0,0x5c(s8)
andi v0,v0,0x1000
beq v0,zero,0x00019b10
_lui v0,0x8000
bne s7,zero,0x00019b14
_lw t9,-0x7e08(gp)
lw v0,0xb0(s8)
lw v1,0x20(s5)
lw a0,0x24(s5)
ori v0,v0,0x7
sw zero,0x4(s8)
sw v0,0xb0(s8)
beq a0,zero,0x00019c54
_sw v1,0x0(s8)
sw s8,0x4(v1)
li s4,0x1
b 0x00019220
_sw s8,0x20(s5)
b 0x0001945c
_sw v1,0xc(s5)
b 0x00019450
_sw v0,0x8(s5)
b 0x00019430
_sw v1,0x34(s5)
b 0x00019424
_sw v0,0x30(s5)
lw t9,-0x7d80(gp)
jalr t9
_or a0,s3,zero
li a2,0xa63
bne v0,zero,0x00019c90
_lw gp,0x18(sp)
lw a1,-0x7fd4(gp)
or a0,s5,zero
lw t9,-0x7fd0(gp)
li s3,0x17
bal 0x0001e5b0
_addiu a1,a1,-0x4bfc
b 0x00019374
_lw gp,0x18(sp)
lw a3,-0x7fac(gp)
addiu a0,s8,0x58
lw a1,-0x7fd4(gp)
lw t9,-0x7f98(gp)
lw a2,0x84(s5)
addiu a3,a3,-0x56bc
addiu a1,a1,-0x4b9c
bal 0x000215fc
_sw s8,0x10(sp)
beq v0,zero,0x00019c04
_lw gp,0x18(sp)
lw v0,0xf4(s5)
andi v1,v0,0x200
bne v1,zero,0x00019a1c
_nop
andi v0,v0,0x4
beq v0,zero,0x00019b50
_nop
b 0x00019220
_li s4,0x1
b 0x000199bc
_sw s8,0xc(s5)
lw t9,-0x7e08(gp)
lw a0,0xd0(s5)
addiu a3,sp,0x28
addiu v0,v0,0x7
sw s8,0x30(sp)
li a1,0x1
or a2,s6,zero
jalr t9
_sw v0,0x28(sp)
bne v0,zero,0x00019bc0
_lw gp,0x18(sp)
lw v0,0xb0(s8)
li s4,0x1
ori v0,v0,0x8
b 0x00019220
_sw v0,0xb0(s8)
beq s7,zero,0x00019b00
_li v0,-0x1
lw a0,0xd8(s5)
beq a0,v0,0x00019b00
_lw a1,-0x7fd4(gp)
li a2,0x8
lw t9,-0x7e50(gp)
jalr t9
_addiu a1,a1,-0x3d30
bgtz v0,0x00019b00
_lw gp,0x18(sp)
lw t9,-0x7e68(gp)
jalr t9
_nop
li v1,0xb
lw v0,0x0(v0)
beq v0,v1,0x00019b00
_lw gp,0x18(sp)
lw a1,-0x7fd4(gp)
or a0,s5,zero
lw t9,-0x7fd0(gp)
li s4,0x1
bal 0x0001e5b0
_addiu a1,a1,-0x4b6c
b 0x00019220
_lw gp,0x18(sp)
b 0x000199a0
_sw s8,0x34(s5)
lw t9,-0x7e68(gp)
jalr t9
_nop
lw gp,0x18(sp)
lw s3,0x0(v0)
lw t9,-0x7e24(gp)
jalr t9
_or a0,s3,zero
or a0,s5,zero
lw gp,0x18(sp)
or a2,v0,zero
lw a1,-0x7fd4(gp)
lw t9,-0x7fd0(gp)
bal 0x0001e5b0
_addiu a1,a1,-0x5ea8
b 0x00019374
_lw gp,0x18(sp)
lw t9,-0x7e68(gp)
jalr t9
_nop
lw gp,0x18(sp)
lw s3,0x0(v0)
lw t9,-0x7e24(gp)
jalr t9
_or a0,s3,zero
or a0,s5,zero
lw gp,0x18(sp)
or a2,v0,zero
lw a1,-0x7fd4(gp)
lw t9,-0x7fd0(gp)
bal 0x0001e5b0
_addiu a1,a1,-0x4b8c
b 0x00019374
_lw gp,0x18(sp)
lw t9,-0x7de4(gp)
jalr t9
_nop
sw s8,0x24(s5)
li s4,0x1
b 0x00019220
_sw s8,0x20(s5)
li a2,0xad7
lw v0,-0x7fc8(gp)
lw a3,-0x7fd4(gp)
lw a1,-0x7fd4(gp)
lw a0,0x0(v0)
addiu a3,a3,-0x62c0
lw v0,-0x7fc4(gp)
lw t9,0x0(v0)
jalr t9
_addiu a1,a1,-0x51b0
li a2,0xae3
lw v0,-0x7fc8(gp)
lw a3,-0x7fd4(gp)
lw a1,-0x7fd4(gp)
lw a0,0x0(v0)
addiu a3,a3,-0x6298
lw v0,-0x7fc4(gp)
lw t9,0x0(v0)
jalr t9
_addiu a1,a1,-0x51b0
lw t9,-0x7fd8(gp)
addiu t9,t9,0x2080
bal 0x00012080
_nop
b 0x000196e8
_li a2,0x979
(translation_unit "int FUN_000190fc(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,\n                undefined1 param_6)\n\n{\n  undefined *puVar1;\n  uint uVar2;\n  int *piVar3;\n  undefined4 *puVar4;\n  int iVar5;\n  int iVar6;\n  uint uVar7;\n  undefined4 uVar8;\n  int iVar9;\n  int *piVar10;\n  int iVar11;\n  int unaff_s4;\n  int *unaff_s8;\n  undefined1 *puVar12;\n  undefined4 local_40 [2];\n  int *local_38;\n  int local_2c;\n  \n  piVar10 = (int *)PTR___stack_chk_guard_0003d244;\n  puVar12 = &_gp_1;\n  local_2c = *(int *)PTR___stack_chk_guard_0003d244;\n  if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }\n  if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }\n  FUN_0001871c(param_1,param_3,param_4);\nLAB_00019220:\n  while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }\n  return unaff_s4;\n}\n\n" (function_definition "int FUN_000190fc(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,\n                undefined1 param_6)\n\n{\n  undefined *puVar1;\n  uint uVar2;\n  int *piVar3;\n  undefined4 *puVar4;\n  int iVar5;\n  int iVar6;\n  uint uVar7;\n  undefined4 uVar8;\n  int iVar9;\n  int *piVar10;\n  int iVar11;\n  int unaff_s4;\n  int *unaff_s8;\n  undefined1 *puVar12;\n  undefined4 local_40 [2];\n  int *local_38;\n  int local_2c;\n  \n  piVar10 = (int *)PTR___stack_chk_guard_0003d244;\n  puVar12 = &_gp_1;\n  local_2c = *(int *)PTR___stack_chk_guard_0003d244;\n  if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }\n  if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }\n  FUN_0001871c(param_1,param_3,param_4);\nLAB_00019220:\n  while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }\n  return unaff_s4;\n}" primitive_type (function_declarator "FUN_000190fc(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,\n                undefined1 param_6)" identifier (parameter_list "(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,\n                undefined1 param_6)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "uint param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "int param_4" primitive_type identifier) , (parameter_declaration "char param_5" primitive_type identifier) , (parameter_declaration "undefined1 param_6" type_identifier identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  uint uVar2;\n  int *piVar3;\n  undefined4 *puVar4;\n  int iVar5;\n  int iVar6;\n  uint uVar7;\n  undefined4 uVar8;\n  int iVar9;\n  int *piVar10;\n  int iVar11;\n  int unaff_s4;\n  int *unaff_s8;\n  undefined1 *puVar12;\n  undefined4 local_40 [2];\n  int *local_38;\n  int local_2c;\n  \n  piVar10 = (int *)PTR___stack_chk_guard_0003d244;\n  puVar12 = &_gp_1;\n  local_2c = *(int *)PTR___stack_chk_guard_0003d244;\n  if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }\n  if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }\n  FUN_0001871c(param_1,param_3,param_4);\nLAB_00019220:\n  while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }\n  return unaff_s4;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "undefined4 *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "undefined4 uVar8;" type_identifier identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int *piVar10;" primitive_type (pointer_declarator "*piVar10" * identifier) ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "int unaff_s4;" primitive_type identifier ;) (declaration "int *unaff_s8;" primitive_type (pointer_declarator "*unaff_s8" * identifier) ;) (declaration "undefined1 *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "undefined4 local_40 [2];" type_identifier (array_declarator "local_40 [2]" identifier [ number_literal ]) ;) (declaration "int *local_38;" primitive_type (pointer_declarator "*local_38" * identifier) ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "piVar10 = (int *)PTR___stack_chk_guard_0003d244;" (assignment_expression "piVar10 = (int *)PTR___stack_chk_guard_0003d244" identifier = (cast_expression "(int *)PTR___stack_chk_guard_0003d244" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_0003d244;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_0003d244" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0003d244" * (cast_expression "(int *)PTR___stack_chk_guard_0003d244" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }" if (parenthesized_expression "((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0))" ( (binary_expression "(param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)" (parenthesized_expression "(param_5 != '\0')" ( (binary_expression "param_5 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)" ( (comma_expression "iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0" (assignment_expression "iVar9 = *(int *)(param_1 + 0x74)" identifier = (pointer_expression "*(int *)(param_1 + 0x74)" * (cast_expression "(int *)(param_1 + 0x74)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x74)" ( (binary_expression "param_1 + 0x74" identifier + number_literal) ))))) , (binary_expression "iVar9 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }" { (expression_statement "uVar7 = *(uint *)(param_1 + 0x88);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0x88)" identifier = (pointer_expression "*(uint *)(param_1 + 0x88)" * (cast_expression "(uint *)(param_1 + 0x88)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) ))))) ;) (if_statement "if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }" if (parenthesized_expression "(uVar7 != 0)" ( (binary_expression "uVar7 != 0" identifier != number_literal) )) (compound_statement "{\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }" { (if_statement "if (uVar7 == 0) {\n        trap(7);\n      }" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "iVar6 = (param_2 % uVar7) * 0x130 + iVar9;" (assignment_expression "iVar6 = (param_2 % uVar7) * 0x130 + iVar9" identifier = (binary_expression "(param_2 % uVar7) * 0x130 + iVar9" (binary_expression "(param_2 % uVar7) * 0x130" (parenthesized_expression "(param_2 % uVar7)" ( (binary_expression "param_2 % uVar7" identifier % identifier) )) * number_literal) + identifier)) ;) (expression_statement "uVar2 = param_2 + 1;" (assignment_expression "uVar2 = param_2 + 1" identifier = (binary_expression "param_2 + 1" identifier + number_literal)) ;) (if_statement "if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }" if (parenthesized_expression "(*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4))" ( (binary_expression "*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)" (pointer_expression "*(uint *)(iVar6 + 0xe8)" * (cast_expression "(uint *)(iVar6 + 0xe8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xe8)" ( (binary_expression "iVar6 + 0xe8" identifier + number_literal) )))) <= (pointer_expression "*(uint *)(iVar6 + 0xe4)" * (cast_expression "(uint *)(iVar6 + 0xe4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xe4)" ( (binary_expression "iVar6 + 0xe4" identifier + number_literal) ))))) )) (compound_statement "{\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }" { (do_statement "do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));" do (compound_statement "{\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        }" { (if_statement "if (param_2 + uVar7 == uVar2) goto LAB_000191e0;" if (parenthesized_expression "(param_2 + uVar7 == uVar2)" ( (binary_expression "param_2 + uVar7 == uVar2" (binary_expression "param_2 + uVar7" identifier + identifier) == identifier) )) (goto_statement "goto LAB_000191e0;" goto statement_identifier ;)) (if_statement "if (uVar7 == 0) {\n            trap(7);\n          }" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (compound_statement "{\n            trap(7);\n          }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;" (assignment_expression "iVar6 = (uVar2 % uVar7) * 0x130 + iVar9" identifier = (binary_expression "(uVar2 % uVar7) * 0x130 + iVar9" (binary_expression "(uVar2 % uVar7) * 0x130" (parenthesized_expression "(uVar2 % uVar7)" ( (binary_expression "uVar2 % uVar7" identifier % identifier) )) * number_literal) + identifier)) ;) (expression_statement "uVar2 = uVar2 + 1;" (assignment_expression "uVar2 = uVar2 + 1" identifier = (binary_expression "uVar2 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4))" ( (binary_expression "*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)" (pointer_expression "*(uint *)(iVar6 + 0xe8)" * (cast_expression "(uint *)(iVar6 + 0xe8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xe8)" ( (binary_expression "iVar6 + 0xe8" identifier + number_literal) )))) <= (pointer_expression "*(uint *)(iVar6 + 0xe4)" * (cast_expression "(uint *)(iVar6 + 0xe4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xe4)" ( (binary_expression "iVar6 + 0xe4" identifier + number_literal) ))))) )) ;) })) (expression_statement "unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);" (assignment_expression "unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6)" identifier = (call_expression "FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6)" identifier (argument_list "(iVar6,param_2,param_3,param_4,1,param_6)" ( identifier , identifier , identifier , identifier , number_literal , identifier )))) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (labeled_statement "LAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);" statement_identifier : (expression_statement "param_4 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "param_4 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;)) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (if_statement "if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;" if (parenthesized_expression "((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9))" ( (binary_expression "(param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)" (parenthesized_expression "(param_4 != 0)" ( (binary_expression "param_4 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar8 = 0x967, *piVar3 == 9)" ( (comma_expression "uVar8 = 0x967, *piVar3 == 9" (assignment_expression "uVar8 = 0x967" identifier = number_literal) , (binary_expression "*piVar3 == 9" (pointer_expression "*piVar3" * identifier) == number_literal)) ))) )) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;)) (labeled_statement "LAB_00019214:\n    unaff_s4 = 0;" statement_identifier : (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;)) (expression_statement "*piVar3 = 0x17;" (assignment_expression "*piVar3 = 0x17" (pointer_expression "*piVar3" * identifier) = number_literal) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (if_statement "if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }" if (parenthesized_expression "(((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0))" ( (binary_expression "((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)" (parenthesized_expression "((int)param_2 < 0x400)" ( (binary_expression "(int)param_2 < 0x400" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) || (parenthesized_expression "((*(uint *)(param_1 + 0xf4) & 0x240) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0xf4) & 0x240) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0xf4) & 0x240)" ( (binary_expression "*(uint *)(param_1 + 0xf4) & 0x240" (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }" { (expression_statement "unaff_s4 = param_1;" (assignment_expression "unaff_s4 = param_1" identifier = identifier) ;) (if_statement "if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8))" ( (binary_expression "*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)" (pointer_expression "*(int *)(param_1 + 0xe4)" * (cast_expression "(int *)(param_1 + 0xe4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe4)" ( (binary_expression "param_1 + 0xe4" identifier + number_literal) )))) == (pointer_expression "*(int *)(param_1 + 0xe8)" * (cast_expression "(int *)(param_1 + 0xe8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe8)" ( (binary_expression "param_1 + 0xe8" identifier + number_literal) ))))) )) (compound_statement "{\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }" { (labeled_statement "LAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);" statement_identifier : (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bfc)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bfc" identifier + number_literal) ))) ;)) (expression_statement "param_4 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "param_4 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (if_statement "if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;" if (parenthesized_expression "((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))" ( (binary_expression "(param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9)" (parenthesized_expression "(param_4 == 0)" ( (binary_expression "param_4 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9)" ( (comma_expression "uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9" (assignment_expression "uVar8 = 0x9a5" identifier = number_literal) , (comma_expression "puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9" (assignment_expression "puVar4 = (undefined4 *)PTR_DAT_0003d038" identifier = (cast_expression "(undefined4 *)PTR_DAT_0003d038" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" * identifier) != number_literal))) ))) )) (goto_statement "goto LAB_00019214;" goto statement_identifier ;)) (goto_statement "goto LAB_000196ec;" goto statement_identifier ;) })) (expression_statement "iVar9 = *(int *)(param_1 + 0x70);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x70)" identifier = (pointer_expression "*(int *)(param_1 + 0x70)" * (cast_expression "(int *)(param_1 + 0x70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) (while_statement "while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }" while (parenthesized_expression "(iVar6 = iVar9, iVar6 != 0)" ( (comma_expression "iVar6 = iVar9, iVar6 != 0" (assignment_expression "iVar6 = iVar9" identifier = identifier) , (binary_expression "iVar6 != 0" identifier != number_literal)) )) (compound_statement "{\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }" { (expression_statement "unaff_s4 = iVar6;" (assignment_expression "unaff_s4 = iVar6" identifier = identifier) ;) (expression_statement "iVar9 = *(int *)(iVar6 + 0x70);" (assignment_expression "iVar9 = *(int *)(iVar6 + 0x70)" identifier = (pointer_expression "*(int *)(iVar6 + 0x70)" * (cast_expression "(int *)(iVar6 + 0x70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x70)" ( (binary_expression "iVar6 + 0x70" identifier + number_literal) ))))) ;) })) (if_statement "if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }" if (parenthesized_expression "(*(int *)(unaff_s4 + 0xf0) != 0)" ( (binary_expression "*(int *)(unaff_s4 + 0xf0) != 0" (pointer_expression "*(int *)(unaff_s4 + 0xf0)" * (cast_expression "(int *)(unaff_s4 + 0xf0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s4 + 0xf0)" ( (binary_expression "unaff_s4 + 0xf0" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }" { (expression_statement "unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);" (assignment_expression "unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18)" identifier = (cast_expression "(int *)(*(code *)PTR_malloc_0003d1e0)(0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_malloc_0003d1e0)(0x18)" (parenthesized_expression "(*(code *)PTR_malloc_0003d1e0)" ( (pointer_expression "*(code *)PTR_malloc_0003d1e0" * (cast_expression "(code *)PTR_malloc_0003d1e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x18)" ( number_literal ))))) ;) (if_statement "if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }" if (parenthesized_expression "(unaff_s8 != (int *)0x0)" ( (binary_expression "unaff_s8 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }" { (expression_statement "iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);" (assignment_expression "iVar9 = FUN_0001850c(param_3,param_4,unaff_s8)" identifier = (call_expression "FUN_0001850c(param_3,param_4,unaff_s8)" identifier (argument_list "(param_3,param_4,unaff_s8)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }" { (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (goto_statement "goto LAB_000192ac;" goto statement_identifier ;) })) (expression_statement "iVar9 = unaff_s4 + 0x94;" (assignment_expression "iVar9 = unaff_s4 + 0x94" identifier = (binary_expression "unaff_s4 + 0x94" identifier + number_literal)) ;) (expression_statement "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);" (assignment_expression "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" ( (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" * (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (if_statement "if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }" { (expression_statement "puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);" (assignment_expression "puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" identifier = (cast_expression "(undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" (parenthesized_expression "(*(code *)PTR_tsearch_0003d1a4)" ( (pointer_expression "*(code *)PTR_tsearch_0003d1a4" * (cast_expression "(code *)PTR_tsearch_0003d1a4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" ( identifier , (binary_expression "unaff_s4 + 0x78" identifier + number_literal) , (binary_expression "PTR_0003d028 + 0x7760" identifier + number_literal) ))))) ;) (if_statement "if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }" if (parenthesized_expression "(puVar4 == (undefined4 *)0x0)" ( (binary_expression "puVar4 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }" { (expression_statement "FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);" (call_expression "FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28)" identifier (argument_list "(unaff_s4,PTR_DAT_0003d02c + -0x4c28)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4c28" identifier + number_literal) ))) ;) (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" ( (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" * (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (if_statement "if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }" { (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (goto_statement "goto LAB_00019504;" goto statement_identifier ;) })) }) (else_clause "else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }" else (compound_statement "{\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }" { (expression_statement "piVar3 = (int *)*puVar4;" (assignment_expression "piVar3 = (int *)*puVar4" identifier = (cast_expression "(int *)*puVar4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar4" * identifier))) ;) (if_statement "if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }" if (parenthesized_expression "(unaff_s8 != piVar3)" ( (binary_expression "unaff_s8 != piVar3" identifier != identifier) )) (compound_statement "{\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }" { (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) })) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" identifier = identifier) ;) (if_statement "if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }" if (parenthesized_expression "((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0))" ( (binary_expression "(uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)" (cast_expression "(uint)piVar3[5]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "piVar3[5]" identifier [ number_literal ])) < (pointer_expression "*(uint *)(unaff_s4 + 0xf0)" * (cast_expression "(uint *)(unaff_s4 + 0xf0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s4 + 0xf0)" ( (binary_expression "unaff_s4 + 0xf0" identifier + number_literal) ))))) )) (compound_statement "{\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }" { (expression_statement "piVar3[5] = piVar3[5] + 1;" (assignment_expression "piVar3[5] = piVar3[5] + 1" (subscript_expression "piVar3[5]" identifier [ number_literal ]) = (binary_expression "piVar3[5] + 1" (subscript_expression "piVar3[5]" identifier [ number_literal ]) + number_literal)) ;) (expression_statement "iVar9 = (*(code *)puVar1)(iVar9);" (assignment_expression "iVar9 = (*(code *)puVar1)(iVar9)" identifier = (call_expression "(*(code *)puVar1)(iVar9)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (if_statement "if (iVar9 == 0) goto LAB_000192ac;" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000192ac;" goto statement_identifier ;)) }) (else_clause "else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }" else (compound_statement "{\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }" { (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" ( (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" * (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (if_statement "if (iVar9 == 0) goto LAB_00019504;" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00019504;" goto statement_identifier ;)) }))) }))) (expression_statement "FUN_000120c0();" (call_expression "FUN_000120c0()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_000196b4;" goto statement_identifier ;) })) (labeled_statement "LAB_00019cb4:\n        puVar12 = &_gp_1;" statement_identifier : (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;)) (expression_statement "entry();" (call_expression "entry()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_00019cc4;" goto statement_identifier ;) })) (goto_statement "goto LAB_00019504;" goto statement_identifier ;) })) (labeled_statement "LAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" statement_identifier : (if_statement "if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" if (parenthesized_expression "((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0))" ( (binary_expression "(*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)" (parenthesized_expression "(*(code **)(param_1 + 0x40) == (code *)0x0)" ( (binary_expression "*(code **)(param_1 + 0x40) == (code *)0x0" (pointer_expression "*(code **)(param_1 + 0x40)" * (cast_expression "(code **)(param_1 + 0x40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)" ( (comma_expression "unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0" (assignment_expression "unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4)" identifier = (call_expression "(**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4)" (parenthesized_expression "(**(code **)(param_1 + 0x40))" ( (pointer_expression "**(code **)(param_1 + 0x40)" * (pointer_expression "*(code **)(param_1 + 0x40)" * (cast_expression "(code **)(param_1 + 0x40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(param_1 + 0x44),param_3,param_4)" ( (pointer_expression "*(undefined4 *)(param_1 + 0x44)" * (cast_expression "(undefined4 *)(param_1 + 0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) )))) , identifier , identifier )))) , (binary_expression "unaff_s4 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" { (expression_statement "unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);" (assignment_expression "unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0)" identifier = (cast_expression "(int *)(*(code *)PTR_calloc_0003d120)(1,0xf0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_calloc_0003d120)(1,0xf0)" (parenthesized_expression "(*(code *)PTR_calloc_0003d120)" ( (pointer_expression "*(code *)PTR_calloc_0003d120" * (cast_expression "(code *)PTR_calloc_0003d120" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(1,0xf0)" ( number_literal , number_literal ))))) ;) (if_statement "if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }" if (parenthesized_expression "(unaff_s8 == (int *)0x0)" ( (binary_expression "unaff_s8 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }" { (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar6 = *piVar3;" (assignment_expression "iVar6 = *piVar3" identifier = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar6)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier )))) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bbc" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (if_statement "if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }" if (parenthesized_expression "((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9))" ( (binary_expression "(iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)" (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar8 = 0x9ca, *piVar3 != 9)" ( (comma_expression "uVar8 = 0x9ca, *piVar3 != 9" (assignment_expression "uVar8 = 0x9ca" identifier = number_literal) , (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" * identifier) != number_literal)) ))) )) (compound_statement "{\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }" { (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" identifier (argument_list "(param_1,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (expression_statement "*piVar3 = iVar6;" (assignment_expression "*piVar3 = iVar6" (pointer_expression "*piVar3" * identifier) = identifier) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }) (else_clause "else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }" else (compound_statement "{\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }" { (expression_statement "uVar8 = *(undefined4 *)(param_1 + 0x7c);" (assignment_expression "uVar8 = *(undefined4 *)(param_1 + 0x7c)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x7c)" * (cast_expression "(undefined4 *)(param_1 + 0x7c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x7c)" ( (binary_expression "param_1 + 0x7c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 *)((int)unaff_s8 + 0xa9) = 1;" (assignment_expression "*(undefined1 *)((int)unaff_s8 + 0xa9) = 1" (pointer_expression "*(undefined1 *)((int)unaff_s8 + 0xa9)" * (cast_expression "(undefined1 *)((int)unaff_s8 + 0xa9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s8 + 0xa9)" ( (binary_expression "(int)unaff_s8 + 0xa9" (cast_expression "(int)unaff_s8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "iVar9 = FUN_0001ea3c(uVar8);" (assignment_expression "iVar9 = FUN_0001ea3c(uVar8)" identifier = (call_expression "FUN_0001ea3c(uVar8)" identifier (argument_list "(uVar8)" ( identifier )))) ;) (expression_statement "unaff_s8[10] = iVar9;" (assignment_expression "unaff_s8[10] = iVar9" (subscript_expression "unaff_s8[10]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar1 = PTR_malloc_0003d1e0;" (assignment_expression "puVar1 = PTR_malloc_0003d1e0" identifier = identifier) ;) (if_statement "if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }" { (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(*piVar3)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*piVar3)" ( (pointer_expression "*piVar3" * identifier) )))) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bbc" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (if_statement "if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }" if (parenthesized_expression "((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9))" ( (binary_expression "(iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)" (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar8 = 0x9da, *piVar3 != 9)" ( (comma_expression "uVar8 = 0x9da, *piVar3 != 9" (assignment_expression "uVar8 = 0x9da" identifier = number_literal) , (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" * identifier) != number_literal)) ))) )) (compound_statement "{\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }" { (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" identifier (argument_list "(param_1,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "*piVar3 = 0xc;" (assignment_expression "*piVar3 = 0xc" (pointer_expression "*piVar3" * identifier) = number_literal) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }) (else_clause "else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }" else (compound_statement "{\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }" { (expression_statement "unaff_s8[0x26] = *(int *)(param_1 + 0xec);" (assignment_expression "unaff_s8[0x26] = *(int *)(param_1 + 0xec)" (subscript_expression "unaff_s8[0x26]" identifier [ number_literal ]) = (pointer_expression "*(int *)(param_1 + 0xec)" * (cast_expression "(int *)(param_1 + 0xec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xec)" ( (binary_expression "param_1 + 0xec" identifier + number_literal) ))))) ;) (expression_statement "iVar9 = (*(code *)puVar1)(param_4);" (assignment_expression "iVar9 = (*(code *)puVar1)(param_4)" identifier = (call_expression "(*(code *)puVar1)(param_4)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_4)" ( identifier )))) ;) (expression_statement "unaff_s8[0x15] = iVar9;" (assignment_expression "unaff_s8[0x15] = iVar9" (subscript_expression "unaff_s8[0x15]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }" { (expression_statement "(*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);" (call_expression "(*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4)" (parenthesized_expression "(*(code *)PTR_memcpy_0003d248)" ( (pointer_expression "*(code *)PTR_memcpy_0003d248" * (cast_expression "(code *)PTR_memcpy_0003d248" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (expression_statement "unaff_s8[0x24] = param_4;" (assignment_expression "unaff_s8[0x24] = param_4" (subscript_expression "unaff_s8[0x24]" identifier [ number_literal ]) = identifier) ;) (expression_statement "unaff_s8[0x29] = param_2;" (assignment_expression "unaff_s8[0x29] = param_2" (subscript_expression "unaff_s8[0x29]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(undefined1 *)(unaff_s8 + 0x2a) = param_6;" (assignment_expression "*(undefined1 *)(unaff_s8 + 0x2a) = param_6" (pointer_expression "*(undefined1 *)(unaff_s8 + 0x2a)" * (cast_expression "(undefined1 *)(unaff_s8 + 0x2a)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s8 + 0x2a)" ( (binary_expression "unaff_s8 + 0x2a" identifier + number_literal) )))) = identifier) ;) (expression_statement "unaff_s8[6] = param_1;" (assignment_expression "unaff_s8[6] = param_1" (subscript_expression "unaff_s8[6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "iVar9 = FUN_0001f07c();" (assignment_expression "iVar9 = FUN_0001f07c()" identifier = (call_expression "FUN_0001f07c()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar7 = *(uint *)(param_1 + 0xf4);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0xf4)" identifier = (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[0x25] = iVar9;" (assignment_expression "unaff_s8[0x25] = iVar9" (subscript_expression "unaff_s8[0x25]" identifier [ number_literal ]) = identifier) ;) (if_statement "if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }" if (parenthesized_expression "((uVar7 & 2) != 0)" ( (binary_expression "(uVar7 & 2) != 0" (parenthesized_expression "(uVar7 & 2)" ( (binary_expression "uVar7 & 2" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }" { (expression_statement "iVar9 = 0x16;" (assignment_expression "iVar9 = 0x16" identifier = number_literal) ;) (goto_statement "goto LAB_00019374;" goto statement_identifier ;) })) (expression_statement "iVar6 = param_1 + 0xac;" (assignment_expression "iVar6 = param_1 + 0xac" identifier = (binary_expression "param_1 + 0xac" identifier + number_literal)) ;) (expression_statement "FUN_00014e60(unaff_s8);" (call_expression "FUN_00014e60(unaff_s8)" identifier (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" ( (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" * (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier )))) ;) (expression_statement "uVar8 = 0xa5d;" (assignment_expression "uVar8 = 0xa5d" identifier = number_literal) ;) (if_statement "if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }" { (if_statement "if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" if (parenthesized_expression "(*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8))" ( (binary_expression "*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)" (pointer_expression "*(uint *)(param_1 + 0xe4)" * (cast_expression "(uint *)(param_1 + 0xe4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe4)" ( (binary_expression "param_1 + 0xe4" identifier + number_literal) )))) < (pointer_expression "*(uint *)(param_1 + 0xe8)" * (cast_expression "(uint *)(param_1 + 0xe8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe8)" ( (binary_expression "param_1 + 0xe8" identifier + number_literal) ))))) )) (compound_statement "{\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }" { (expression_statement "*(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;" (assignment_expression "*(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1" (pointer_expression "*(uint *)(param_1 + 0xe4)" * (cast_expression "(uint *)(param_1 + 0xe4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe4)" ( (binary_expression "param_1 + 0xe4" identifier + number_literal) )))) = (binary_expression "*(uint *)(param_1 + 0xe4) + 1" (pointer_expression "*(uint *)(param_1 + 0xe4)" * (cast_expression "(uint *)(param_1 + 0xe4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe4)" ( (binary_expression "param_1 + 0xe4" identifier + number_literal) )))) + number_literal)) ;) (if_statement "if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }" if (parenthesized_expression "((*(uint *)(param_1 + 0xf4) & 4) == 0)" ( (binary_expression "(*(uint *)(param_1 + 0xf4) & 4) == 0" (parenthesized_expression "(*(uint *)(param_1 + 0xf4) & 4)" ( (binary_expression "*(uint *)(param_1 + 0xf4) & 4" (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }" { (expression_statement "iVar9 = *(int *)(param_1 + 0x30);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x30)" identifier = (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "iVar11 = *(int *)(param_1 + 0x34);" (assignment_expression "iVar11 = *(int *)(param_1 + 0x34)" identifier = (pointer_expression "*(int *)(param_1 + 0x34)" * (cast_expression "(int *)(param_1 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34)" ( (binary_expression "param_1 + 0x34" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[5] = 0;" (assignment_expression "unaff_s8[5] = 0" (subscript_expression "unaff_s8[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "unaff_s8[4] = iVar9;" (assignment_expression "unaff_s8[4] = iVar9" (subscript_expression "unaff_s8[4]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }" { (expression_statement "*(int **)(param_1 + 0x34) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x34) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x34)" * (cast_expression "(int **)(param_1 + 0x34)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x34)" ( (binary_expression "param_1 + 0x34" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }" else (compound_statement "{\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }" { (expression_statement "*(int **)(iVar9 + 0x14) = unaff_s8;" (assignment_expression "*(int **)(iVar9 + 0x14) = unaff_s8" (pointer_expression "*(int **)(iVar9 + 0x14)" * (cast_expression "(int **)(iVar9 + 0x14)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x14)" ( (binary_expression "iVar9 + 0x14" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "*(int **)(param_1 + 0x30) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x30) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x30)" * (cast_expression "(int **)(param_1 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) = identifier) ;) })) (expression_statement "iVar9 = *(int *)(param_1 + 8);" (assignment_expression "iVar9 = *(int *)(param_1 + 8)" identifier = (pointer_expression "*(int *)(param_1 + 8)" * (cast_expression "(int *)(param_1 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "iVar11 = *(int *)(param_1 + 0xc);" (assignment_expression "iVar11 = *(int *)(param_1 + 0xc)" identifier = (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[3] = 0;" (assignment_expression "unaff_s8[3] = 0" (subscript_expression "unaff_s8[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "unaff_s8[2] = iVar9;" (assignment_expression "unaff_s8[2] = iVar9" (subscript_expression "unaff_s8[2]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }" { (expression_statement "*(int **)(param_1 + 0xc) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0xc) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0xc)" * (cast_expression "(int **)(param_1 + 0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }" else (compound_statement "{\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }" { (expression_statement "*(int **)(iVar9 + 0xc) = unaff_s8;" (assignment_expression "*(int **)(iVar9 + 0xc) = unaff_s8" (pointer_expression "*(int **)(iVar9 + 0xc)" * (cast_expression "(int **)(iVar9 + 0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0xc)" ( (binary_expression "iVar9 + 0xc" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" identifier = identifier) ;) (expression_statement "*(int **)(param_1 + 8) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 8) = unaff_s8" (pointer_expression "*(int **)(param_1 + 8)" * (cast_expression "(int **)(param_1 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar9 = (*(code *)puVar1)(iVar6);" (assignment_expression "iVar9 = (*(code *)puVar1)(iVar6)" identifier = (call_expression "(*(code *)puVar1)(iVar6)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier )))) ;) (expression_statement "uVar8 = 0xa7b;" (assignment_expression "uVar8 = 0xa7b" identifier = number_literal) ;) (if_statement "if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }" { (if_statement "if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }" if (parenthesized_expression "(*(code **)(param_1 + 0x50) != (code *)0x0)" ( (binary_expression "*(code **)(param_1 + 0x50) != (code *)0x0" (pointer_expression "*(code **)(param_1 + 0x50)" * (cast_expression "(code **)(param_1 + 0x50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) )))) != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }" { (expression_statement "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);" (call_expression "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0)" (parenthesized_expression "(**(code **)(param_1 + 0x50))" ( (pointer_expression "**(code **)(param_1 + 0x50)" * (pointer_expression "*(code **)(param_1 + 0x50)" * (cast_expression "(code **)(param_1 + 0x50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0)" ( (pointer_expression "*(undefined4 *)(param_1 + 0x54)" * (cast_expression "(undefined4 *)(param_1 + 0x54)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x54)" ( (binary_expression "param_1 + 0x54" identifier + number_literal) )))) , identifier , (binary_expression "unaff_s8 + 0xc" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "uVar7 = *(uint *)(param_1 + 0xf4);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0xf4)" identifier = (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) ))))) ;) (if_statement "if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" if (parenthesized_expression "((uVar7 & 4) == 0)" ( (binary_expression "(uVar7 & 4) == 0" (parenthesized_expression "(uVar7 & 4)" ( (binary_expression "uVar7 & 4" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }" { (expression_statement "iVar9 = *(int *)(param_1 + 0x90);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x90)" identifier = (pointer_expression "*(int *)(param_1 + 0x90)" * (cast_expression "(int *)(param_1 + 0x90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x90)" ( (binary_expression "param_1 + 0x90" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[0x16] = *(int *)(param_1 + 0x8c);" (assignment_expression "unaff_s8[0x16] = *(int *)(param_1 + 0x8c)" (subscript_expression "unaff_s8[0x16]" identifier [ number_literal ]) = (pointer_expression "*(int *)(param_1 + 0x8c)" * (cast_expression "(int *)(param_1 + 0x8c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x8c)" ( (binary_expression "param_1 + 0x8c" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[0x17] = iVar9;" (assignment_expression "unaff_s8[0x17] = iVar9" (subscript_expression "unaff_s8[0x17]" identifier [ number_literal ]) = identifier) ;) (if_statement "if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }" if (parenthesized_expression "((uVar7 & 0x200) == 0)" ( (binary_expression "(uVar7 & 0x200) == 0" (parenthesized_expression "(uVar7 & 0x200)" ( (binary_expression "uVar7 & 0x200" identifier & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }" { (labeled_statement "LAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" statement_identifier : (if_statement "if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" if (parenthesized_expression "((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         ))" ( (binary_expression "(((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )" (parenthesized_expression "(((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1))" ( (binary_expression "((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)" (parenthesized_expression "((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1))" ( (binary_expression "(param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)" (parenthesized_expression "(param_5 != '\0')" ( (binary_expression "param_5 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(int *)(param_1 + 0xd8) != -1)" ( (binary_expression "*(int *)(param_1 + 0xd8) != -1" (pointer_expression "*(int *)(param_1 + 0xd8)" * (cast_expression "(int *)(param_1 + 0xd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xd8)" ( (binary_expression "param_1 + 0xd8" identifier + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)" ( (comma_expression "iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1" (assignment_expression "iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)" identifier = (call_expression "(*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)" (parenthesized_expression "(*(code *)PTR_write_0003d1b0)" ( (pointer_expression "*(code *)PTR_write_0003d1b0" * (cast_expression "(code *)PTR_write_0003d1b0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)" ( (pointer_expression "*(int *)(param_1 + 0xd8)" * (cast_expression "(int *)(param_1 + 0xd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xd8)" ( (binary_expression "param_1 + 0xd8" identifier + number_literal) )))) , (binary_expression "PTR_DAT_0003d02c + -0x3d30" identifier + number_literal) , number_literal )))) , (binary_expression "iVar9 < 1" identifier < number_literal)) ))) )) && (parenthesized_expression "(piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )" ( (comma_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) , (binary_expression "*piVar3 != 0xb" (pointer_expression "*piVar3" * identifier) != number_literal)) ))) )) (compound_statement "{\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" { (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" identifier = number_literal) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4b6c)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4b6c" identifier + number_literal) ))) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) }))) (labeled_statement "LAB_00019b00:\n                      unaff_s4 = 1;" statement_identifier : (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" identifier = number_literal) ;)) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }) (else_clause "else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" else (compound_statement "{\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" { (expression_statement "iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);" (assignment_expression "iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8)" identifier = (call_expression "FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8)" identifier (argument_list "(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8)" ( (binary_expression "unaff_s8 + 0x16" identifier + number_literal) , (binary_expression "PTR_DAT_0003d02c + -0x4b9c" identifier + number_literal) , (pointer_expression "*(undefined4 *)(param_1 + 0x84)" * (cast_expression "(undefined4 *)(param_1 + 0x84)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x84)" ( (binary_expression "param_1 + 0x84" identifier + number_literal) )))) , (binary_expression "PTR_LAB_0003d054 + -0x56bc" identifier + number_literal) , identifier )))) ;) (if_statement "if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }" { (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar9 = *piVar3;" (assignment_expression "iVar9 = *piVar3" identifier = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar9)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4b8c" identifier + number_literal) , identifier ))) ;) (goto_statement "goto LAB_00019374;" goto statement_identifier ;) })) (expression_statement "uVar7 = *(uint *)(param_1 + 0xf4);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0xf4)" identifier = (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) ))))) ;) (if_statement "if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }" if (parenthesized_expression "((uVar7 & 0x200) == 0)" ( (binary_expression "(uVar7 & 0x200) == 0" (parenthesized_expression "(uVar7 & 0x200)" ( (binary_expression "uVar7 & 0x200" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }" { (if_statement "if ((uVar7 & 4) == 0) goto LAB_00019b50;" if (parenthesized_expression "((uVar7 & 4) == 0)" ( (binary_expression "(uVar7 & 4) == 0" (parenthesized_expression "(uVar7 & 4)" ( (binary_expression "uVar7 & 4" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00019b50;" goto statement_identifier ;)) (goto_statement "goto LAB_00019b00;" goto statement_identifier ;) })) }))) (if_statement "if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }" if (parenthesized_expression "(((uVar7 & 0x1000) != 0) && (param_5 == '\0'))" ( (binary_expression "((uVar7 & 0x1000) != 0) && (param_5 == '\0')" (parenthesized_expression "((uVar7 & 0x1000) != 0)" ( (binary_expression "(uVar7 & 0x1000) != 0" (parenthesized_expression "(uVar7 & 0x1000)" ( (binary_expression "uVar7 & 0x1000" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "(param_5 == '\0')" ( (binary_expression "param_5 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }" { (expression_statement "iVar9 = *(int *)(param_1 + 0x20);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x20)" identifier = (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = *(int *)(param_1 + 0x24);" (assignment_expression "iVar6 = *(int *)(param_1 + 0x24)" identifier = (pointer_expression "*(int *)(param_1 + 0x24)" * (cast_expression "(int *)(param_1 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x24)" ( (binary_expression "param_1 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[1] = 0;" (assignment_expression "unaff_s8[1] = 0" (subscript_expression "unaff_s8[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "unaff_s8[0x2c] = unaff_s8[0x2c] | 7;" (assignment_expression "unaff_s8[0x2c] = unaff_s8[0x2c] | 7" (subscript_expression "unaff_s8[0x2c]" identifier [ number_literal ]) = (binary_expression "unaff_s8[0x2c] | 7" (subscript_expression "unaff_s8[0x2c]" identifier [ number_literal ]) | number_literal)) ;) (expression_statement "*unaff_s8 = iVar9;" (assignment_expression "*unaff_s8 = iVar9" (pointer_expression "*unaff_s8" * identifier) = identifier) ;) (if_statement "if (iVar6 == 0) goto LAB_00019c54;" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00019c54;" goto statement_identifier ;)) (expression_statement "*(int **)(iVar9 + 4) = unaff_s8;" (assignment_expression "*(int **)(iVar9 + 4) = unaff_s8" (pointer_expression "*(int **)(iVar9 + 4)" * (cast_expression "(int **)(iVar9 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) = identifier) ;) (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" identifier = number_literal) ;) (expression_statement "*(int **)(param_1 + 0x20) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x20) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x20)" * (cast_expression "(int **)(param_1 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) = identifier) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (expression_statement "local_40[0] = 0x80000007;" (assignment_expression "local_40[0] = 0x80000007" (subscript_expression "local_40[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_38 = unaff_s8;" (assignment_expression "local_38 = unaff_s8" identifier = identifier) ;) (expression_statement "iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);" (assignment_expression "iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40)" identifier = (call_expression "(*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40)" (parenthesized_expression "(*(code *)PTR_epoll_ctl_0003d1f8)" ( (pointer_expression "*(code *)PTR_epoll_ctl_0003d1f8" * (cast_expression "(code *)PTR_epoll_ctl_0003d1f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40)" ( (pointer_expression "*(undefined4 *)(param_1 + 0xd0)" * (cast_expression "(undefined4 *)(param_1 + 0xd0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xd0)" ( (binary_expression "param_1 + 0xd0" identifier + number_literal) )))) , number_literal , identifier , identifier )))) ;) (if_statement "if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }" { (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" identifier = number_literal) ;) (expression_statement "unaff_s8[0x2c] = unaff_s8[0x2c] | 8;" (assignment_expression "unaff_s8[0x2c] = unaff_s8[0x2c] | 8" (subscript_expression "unaff_s8[0x2c]" identifier [ number_literal ]) = (binary_expression "unaff_s8[0x2c] | 8" (subscript_expression "unaff_s8[0x2c]" identifier [ number_literal ]) | number_literal)) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar9 = *piVar3;" (assignment_expression "iVar9 = *piVar3" identifier = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar9)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x5ea8" identifier + number_literal) , identifier ))) ;) (labeled_statement "LAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }" statement_identifier : (if_statement "if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }" if (parenthesized_expression "(*(code **)(param_1 + 0x50) != (code *)0x0)" ( (binary_expression "*(code **)(param_1 + 0x50) != (code *)0x0" (pointer_expression "*(code **)(param_1 + 0x50)" * (cast_expression "(code **)(param_1 + 0x50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) )))) != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }" { (expression_statement "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);" (call_expression "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1)" (parenthesized_expression "(**(code **)(param_1 + 0x50))" ( (pointer_expression "**(code **)(param_1 + 0x50)" * (pointer_expression "*(code **)(param_1 + 0x50)" * (cast_expression "(code **)(param_1 + 0x50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1)" ( (pointer_expression "*(undefined4 *)(param_1 + 0x54)" * (cast_expression "(undefined4 *)(param_1 + 0x54)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x54)" ( (binary_expression "param_1 + 0x54" identifier + number_literal) )))) , identifier , (binary_expression "unaff_s8 + 0xc" identifier + number_literal) , number_literal ))) ;) }))) (expression_statement "iVar6 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar6 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (if_statement "if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }" { (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar8 = 0xad2;" (assignment_expression "uVar8 = 0xad2" identifier = number_literal) ;) (if_statement "if (*piVar3 == 9) goto LAB_000196e8;" if (parenthesized_expression "(*piVar3 == 9)" ( (binary_expression "*piVar3 == 9" (pointer_expression "*piVar3" * identifier) == number_literal) )) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;)) })) (expression_statement "iVar11 = param_1 + 0xac;" (assignment_expression "iVar11 = param_1 + 0xac" identifier = (binary_expression "param_1 + 0xac" identifier + number_literal)) ;) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" identifier (argument_list "(param_1,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);" (assignment_expression "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" ( (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" * (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar11)" ( identifier )))) ;) (expression_statement "param_4 = iVar11;" (assignment_expression "param_4 = iVar11" identifier = identifier) ;) (if_statement "if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }" { (expression_statement "uVar8 = 0xad7;" (assignment_expression "uVar8 = 0xad7" identifier = number_literal) ;) (goto_statement "goto LAB_00019c68;" goto statement_identifier ;) })) (if_statement "if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }" if (parenthesized_expression "((*(uint *)(param_1 + 0xf4) & 4) == 0)" ( (binary_expression "(*(uint *)(param_1 + 0xf4) & 4) == 0" (parenthesized_expression "(*(uint *)(param_1 + 0xf4) & 4)" ( (binary_expression "*(uint *)(param_1 + 0xf4) & 4" (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }" { (expression_statement "iVar6 = unaff_s8[4];" (assignment_expression "iVar6 = unaff_s8[4]" identifier = (subscript_expression "unaff_s8[4]" identifier [ number_literal ])) ;) (if_statement "if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }" if (parenthesized_expression "(unaff_s8[5] == 0)" ( (binary_expression "unaff_s8[5] == 0" (subscript_expression "unaff_s8[5]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }" { (expression_statement "*(int *)(param_1 + 0x30) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x30) = iVar6" (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }" else (compound_statement "{\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }" { (expression_statement "*(int *)(unaff_s8[5] + 0x10) = iVar6;" (assignment_expression "*(int *)(unaff_s8[5] + 0x10) = iVar6" (pointer_expression "*(int *)(unaff_s8[5] + 0x10)" * (cast_expression "(int *)(unaff_s8[5] + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s8[5] + 0x10)" ( (binary_expression "unaff_s8[5] + 0x10" (subscript_expression "unaff_s8[5]" identifier [ number_literal ]) + number_literal) )))) = identifier) ;) (expression_statement "iVar6 = unaff_s8[4];" (assignment_expression "iVar6 = unaff_s8[4]" identifier = (subscript_expression "unaff_s8[4]" identifier [ number_literal ])) ;) (expression_statement "iVar5 = unaff_s8[5];" (assignment_expression "iVar5 = unaff_s8[5]" identifier = (subscript_expression "unaff_s8[5]" identifier [ number_literal ])) ;) }))) (if_statement "if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }" { (expression_statement "*(int *)(param_1 + 0x34) = iVar5;" (assignment_expression "*(int *)(param_1 + 0x34) = iVar5" (pointer_expression "*(int *)(param_1 + 0x34)" * (cast_expression "(int *)(param_1 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34)" ( (binary_expression "param_1 + 0x34" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }" else (compound_statement "{\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }" { (expression_statement "*(int *)(iVar6 + 0x14) = iVar5;" (assignment_expression "*(int *)(iVar6 + 0x14) = iVar5" (pointer_expression "*(int *)(iVar6 + 0x14)" * (cast_expression "(int *)(iVar6 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x14)" ( (binary_expression "iVar6 + 0x14" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "unaff_s8[4] = 0;" (assignment_expression "unaff_s8[4] = 0" (subscript_expression "unaff_s8[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "unaff_s8[5] = 0;" (assignment_expression "unaff_s8[5] = 0" (subscript_expression "unaff_s8[5]" identifier [ number_literal ]) = number_literal) ;) })) (expression_statement "iVar6 = unaff_s8[2];" (assignment_expression "iVar6 = unaff_s8[2]" identifier = (subscript_expression "unaff_s8[2]" identifier [ number_literal ])) ;) (if_statement "if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }" if (parenthesized_expression "(unaff_s8[3] == 0)" ( (binary_expression "unaff_s8[3] == 0" (subscript_expression "unaff_s8[3]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }" { (expression_statement "*(int *)(param_1 + 8) = iVar6;" (assignment_expression "*(int *)(param_1 + 8) = iVar6" (pointer_expression "*(int *)(param_1 + 8)" * (cast_expression "(int *)(param_1 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }" else (compound_statement "{\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }" { (expression_statement "*(int *)(unaff_s8[3] + 8) = iVar6;" (assignment_expression "*(int *)(unaff_s8[3] + 8) = iVar6" (pointer_expression "*(int *)(unaff_s8[3] + 8)" * (cast_expression "(int *)(unaff_s8[3] + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s8[3] + 8)" ( (binary_expression "unaff_s8[3] + 8" (subscript_expression "unaff_s8[3]" identifier [ number_literal ]) + number_literal) )))) = identifier) ;) (expression_statement "iVar6 = unaff_s8[2];" (assignment_expression "iVar6 = unaff_s8[2]" identifier = (subscript_expression "unaff_s8[2]" identifier [ number_literal ])) ;) (expression_statement "iVar5 = unaff_s8[3];" (assignment_expression "iVar5 = unaff_s8[3]" identifier = (subscript_expression "unaff_s8[3]" identifier [ number_literal ])) ;) }))) (if_statement "if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }" { (expression_statement "*(int *)(param_1 + 0xc) = iVar5;" (assignment_expression "*(int *)(param_1 + 0xc) = iVar5" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }" else (compound_statement "{\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }" { (expression_statement "*(int *)(iVar6 + 0xc) = iVar5;" (assignment_expression "*(int *)(iVar6 + 0xc) = iVar5" (pointer_expression "*(int *)(iVar6 + 0xc)" * (cast_expression "(int *)(iVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xc)" ( (binary_expression "iVar6 + 0xc" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" identifier = identifier) ;) (expression_statement "unaff_s8[2] = 0;" (assignment_expression "unaff_s8[2] = 0" (subscript_expression "unaff_s8[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "unaff_s8[3] = 0;" (assignment_expression "unaff_s8[3] = 0" (subscript_expression "unaff_s8[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iVar6 = (*(code *)puVar1)(iVar11);" (assignment_expression "iVar6 = (*(code *)puVar1)(iVar11)" identifier = (call_expression "(*(code *)puVar1)(iVar11)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar11)" ( identifier )))) ;) (if_statement "if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }" { (expression_statement "FUN_0001eb80(unaff_s8[10]);" (call_expression "FUN_0001eb80(unaff_s8[10])" identifier (argument_list "(unaff_s8[10])" ( (subscript_expression "unaff_s8[10]" identifier [ number_literal ]) ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8[0x15]);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8[0x15])" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8[0x15])" ( (subscript_expression "unaff_s8[0x15]" identifier [ number_literal ]) ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (if_statement "if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }" { (expression_statement "*piVar3 = iVar9;" (assignment_expression "*piVar3 = iVar9" (pointer_expression "*piVar3" * identifier) = identifier) ;) (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (goto_statement "goto LAB_000195a8;" goto statement_identifier ;) })) (goto_statement "goto LAB_00019c8c;" goto statement_identifier ;) })) }) (else_clause "else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" else (compound_statement "{\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" { (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" ( (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" * (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier )))) ;) (expression_statement "uVar8 = 0xa63;" (assignment_expression "uVar8 = 0xa63" identifier = number_literal) ;) (if_statement "if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }" { (expression_statement "iVar9 = 0x17;" (assignment_expression "iVar9 = 0x17" identifier = number_literal) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bfc" identifier + number_literal) , number_literal ))) ;) (goto_statement "goto LAB_00019374;" goto statement_identifier ;) })) }))) }) (else_clause "else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }" else (compound_statement "{\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }" { (labeled_statement "LAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);" statement_identifier : (expression_statement "(**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);" (call_expression "(**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0)" (parenthesized_expression "(**(code **)PTR_DAT_0003d03c)" ( (pointer_expression "**(code **)PTR_DAT_0003d03c" * (pointer_expression "*(code **)PTR_DAT_0003d03c" * (cast_expression "(code **)PTR_DAT_0003d03c" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (argument_list "(*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0)" ( (pointer_expression "*(undefined4 *)PTR_DAT_0003d038" * (cast_expression "(undefined4 *)PTR_DAT_0003d038" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_DAT_0003d02c + -0x51b0" identifier + number_literal) , identifier , (binary_expression "PTR_DAT_0003d02c + -0x62c0" identifier + number_literal) ))) ;)) (labeled_statement "LAB_00019c8c:\n              uVar8 = 0xae3;" statement_identifier : (expression_statement "uVar8 = 0xae3;" (assignment_expression "uVar8 = 0xae3" identifier = number_literal) ;)) }))) (expression_statement "(**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);" (call_expression "(**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298)" (parenthesized_expression "(**(code **)PTR_DAT_0003d03c)" ( (pointer_expression "**(code **)PTR_DAT_0003d03c" * (pointer_expression "*(code **)PTR_DAT_0003d03c" * (cast_expression "(code **)PTR_DAT_0003d03c" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (argument_list "(*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298)" ( (pointer_expression "*(undefined4 *)PTR_DAT_0003d038" * (cast_expression "(undefined4 *)PTR_DAT_0003d038" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_DAT_0003d02c + -0x51b0" identifier + number_literal) , identifier , (binary_expression "PTR_DAT_0003d02c + -0x6298" identifier + number_literal) ))) ;) (goto_statement "goto LAB_00019cb4;" goto statement_identifier ;) })) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar6 = *piVar3;" (assignment_expression "iVar6 = *piVar3" identifier = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar6)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier )))) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bbc" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (if_statement "if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }" if (parenthesized_expression "((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9))" ( (binary_expression "(iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)" (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar8 = 0x9ee, *piVar3 != 9)" ( (comma_expression "uVar8 = 0x9ee, *piVar3 != 9" (assignment_expression "uVar8 = 0x9ee" identifier = number_literal) , (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" * identifier) != number_literal)) ))) )) (compound_statement "{\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }" { (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" identifier (argument_list "(param_1,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (expression_statement "FUN_0001eb80(unaff_s8[10]);" (call_expression "FUN_0001eb80(unaff_s8[10])" identifier (argument_list "(unaff_s8[10])" ( (subscript_expression "unaff_s8[10]" identifier [ number_literal ]) ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "*piVar3 = iVar6;" (assignment_expression "*piVar3 = iVar6" (pointer_expression "*piVar3" * identifier) = identifier) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }))) }))) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;) }))) (labeled_statement "LAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);" statement_identifier : (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;)) (if_statement "if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }" { (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar8 = 0x9b8;" (assignment_expression "uVar8 = 0x9b8" identifier = number_literal) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (if_statement "if (*piVar3 == 9) goto LAB_000196e8;" if (parenthesized_expression "(*piVar3 == 9)" ( (binary_expression "*piVar3 == 9" (pointer_expression "*piVar3" * identifier) == number_literal) )) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;)) })) }) (else_clause "else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }" else (compound_statement "{\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }" { (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4c5c" identifier + number_literal) , identifier , number_literal ))) ;) (expression_statement "param_4 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "param_4 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (if_statement "if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }" if (parenthesized_expression "((param_4 == 0) || (*piVar3 != 9))" ( (binary_expression "(param_4 == 0) || (*piVar3 != 9)" (parenthesized_expression "(param_4 == 0)" ( (binary_expression "param_4 == 0" identifier == number_literal) )) || (parenthesized_expression "(*piVar3 != 9)" ( (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" * identifier) != number_literal) ))) )) (compound_statement "{\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }" { (labeled_statement "LAB_000195a8:\n      unaff_s4 = 0;" statement_identifier : (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;)) (expression_statement "*piVar3 = 0x16;" (assignment_expression "*piVar3 = 0x16" (pointer_expression "*piVar3" * identifier) = number_literal) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (labeled_statement "LAB_00019cc4:\n    uVar8 = 0x979;" statement_identifier : (expression_statement "uVar8 = 0x979;" (assignment_expression "uVar8 = 0x979" identifier = number_literal) ;)) (labeled_statement "LAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);" statement_identifier : (expression_statement "puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);" (assignment_expression "puVar4 = *(undefined4 **)(puVar12 + -0x7fc8)" identifier = (pointer_expression "*(undefined4 **)(puVar12 + -0x7fc8)" * (cast_expression "(undefined4 **)(puVar12 + -0x7fc8)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar12 + -0x7fc8)" ( (binary_expression "puVar12 + -0x7fc8" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);" statement_identifier : (expression_statement "(*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);" (call_expression "(*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc)" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar12 + -0x7fc4))" ( (pointer_expression "*(code *)**(undefined4 **)(puVar12 + -0x7fc4)" * (cast_expression "(code *)**(undefined4 **)(puVar12 + -0x7fc4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar12 + -0x7fc4)" * (pointer_expression "*(undefined4 **)(puVar12 + -0x7fc4)" * (cast_expression "(undefined4 **)(puVar12 + -0x7fc4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar12 + -0x7fc4)" ( (binary_expression "puVar12 + -0x7fc4" identifier + number_literal) ))))))) )) (argument_list "(*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc)" ( (pointer_expression "*puVar4" * identifier) , (binary_expression "*(int *)(puVar12 + -0x7fd4) + -0x51b0" (pointer_expression "*(int *)(puVar12 + -0x7fd4)" * (cast_expression "(int *)(puVar12 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0x7fd4)" ( (binary_expression "puVar12 + -0x7fd4" identifier + number_literal) )))) + number_literal) , identifier , (binary_expression "*(int *)(puVar12 + -0x7fd4) + -0x4cfc" (pointer_expression "*(int *)(puVar12 + -0x7fd4)" * (cast_expression "(int *)(puVar12 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0x7fd4)" ( (binary_expression "puVar12 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))) ;)) }))) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" identifier (argument_list "(param_1,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (labeled_statement "LAB_00019220:\n  while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }" statement_identifier : (while_statement "while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }" while (parenthesized_expression "(local_2c != *piVar10)" ( (binary_expression "local_2c != *piVar10" identifier != (pointer_expression "*piVar10" * identifier)) )) (compound_statement "{\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }" { (expression_statement "(*(code *)PTR___stack_chk_fail_0003d21c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0003d21c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0003d21c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0003d21c" * (cast_expression "(code *)PTR___stack_chk_fail_0003d21c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;" statement_identifier : (expression_statement "*(int **)(param_1 + 0x24) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x24) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x24)" * (cast_expression "(int **)(param_1 + 0x24)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x24)" ( (binary_expression "param_1 + 0x24" identifier + number_literal) )))) = identifier) ;)) (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" identifier = number_literal) ;) (expression_statement "*(int **)(param_1 + 0x20) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x20) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x20)" * (cast_expression "(int **)(param_1 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) = identifier) ;) }))) (return_statement "return unaff_s4;" return identifier ;) })))
(translation_unit "/* WARNING: Enum "MHD_FLAG": Some values do not have unique names */\n\nMHD_Result\ninternal_add_connection\n          (MHD_Daemon *daemon,MHD_socket client_socket,sockaddr *addr,socklen_t addrlen,\n          _Bool external_add,_Bool non_blck)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  uint uVar3;\n  int *piVar4;\n  MemoryPool *pMVar5;\n  sockaddr *psVar6;\n  time_t tVar7;\n  int iVar8;\n  MHD_Connection *pMVar9;\n  MHD_Result MVar10;\n  undefined4 *puVar11;\n  MHD_Daemon *pMVar12;\n  MHD_FLAG MVar13;\n  MHD_Connection *pMVar14;\n  size_t max;\n  MHD_thread_ID_ MVar15;\n  uint uVar16;\n  undefined4 uVar17;\n  MHD_Daemon *pMVar18;\n  int *piVar19;\n  MHD_mutex_ *pMVar20;\n  int iVar21;\n  MHD_Daemon *unaff_s4;\n  MHD_Connection *unaff_s8;\n  undefined1 *puVar22;\n  epoll_event event;\n  \n  piVar19 = (int *)PTR___stack_chk_guard_0003d244;\n  puVar22 = &_gp;\n  iVar2 = *(int *)PTR___stack_chk_guard_0003d244;\n  if ((external_add) && (pMVar18 = daemon->worker_pool, pMVar18 != (MHD_Daemon *)0x0)) {\n    uVar16 = daemon->worker_pool_size;\n    if (uVar16 != 0) {\n      if (uVar16 == 0) {\n        trap(7);\n      }\n      pMVar12 = pMVar18 + (uint)client_socket % uVar16;\n      uVar3 = client_socket + 1;\n      if (pMVar12->connection_limit <= pMVar12->connections) {\n        do {\n          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;\n          if (uVar16 == 0) {\n            trap(7);\n          }\n          pMVar12 = pMVar18 + uVar3 % uVar16;\n          uVar3 = uVar3 + 1;\n        } while (pMVar12->connection_limit <= pMVar12->connections);\n      }\n      unaff_s4 = (MHD_Daemon *)\n                 internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar22 = &_gp;\n    if (((MHD_mutex_ *)addrlen != (MHD_mutex_ *)0x0) && (uVar17 = 0x967, *piVar4 == 9))\n    goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = (MHD_Daemon *)0x0;\n    *piVar4 = 0x17;\n    goto LAB_00019220;\n  }\n  if ((client_socket < 0x400) || ((daemon->options & (MHD_USE_EPOLL|MHD_USE_POLL)) != MHD_NO_FLAG))\n  {\n    unaff_s4 = daemon;\n    if (daemon->connections == daemon->connection_limit) {\nLAB_00019504:\n      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc);\n      addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) ||\n         (uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    pMVar18 = daemon->master;\n    while (pMVar12 = pMVar18, pMVar12 != (MHD_Daemon *)0x0) {\n      unaff_s4 = pMVar12;\n      pMVar18 = pMVar12->master;\n    }\n    if (unaff_s4->per_ip_connection_limit != 0) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (MHD_Connection *)0x0) {\n        MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8);\n        if (MVar10 == MHD_NO) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex;\n        pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18);\n        if (pMVar12 == (MHD_Daemon *)0x0) {\n          puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);\n          if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }\n          MHD_ip_count_unlock(pMVar18);\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar22 = &_gp;\n        MHD_ip_count_lock(pMVar12);\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((daemon->apc == (MHD_AcceptPolicyCallback)0x0) ||\n       (unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),\n       unaff_s4 != (MHD_Daemon *)0x0)) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (MHD_Connection *)0x0) {\n        piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar8 = *piVar4;\n        uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n        iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n        puVar22 = &_gp;\n        if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        max = daemon->pool_size;\n        unaff_s8->sk_cork_on = true;\n        pMVar5 = MHD_pool_create(max);\n        unaff_s8->pool = pMVar5;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n    if (iVar21 != 0) {\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar17 = 0x9b8;\n      puVar22 = &_gp;\n      if (*piVar4 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4c5c,client_socket,0x400);\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar22 = &_gp;\n    if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) || (*piVar4 != 9)) {\nLAB_000195a8:\n      unaff_s4 = (MHD_Daemon *)0x0;\n      *piVar4 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar17 = 0x979;\nLAB_000196e8:\n    puVar11 = *(undefined4 **)(puVar22 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar22 + -0x7fc4))\n              (*puVar11,*(int *)(puVar22 + -0x7fd4) + -0x51b0,uVar17,\n               *(int *)(puVar22 + -0x7fd4) + -0x4cfc);\n  }\n  MHD_ip_limit_del(daemon,addr,addrlen);\nLAB_00019220:\n  while (iVar2 != *piVar19) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    daemon->eready_tail = unaff_s8;\n    unaff_s4 = (MHD_Daemon *)0x1;\n    daemon->eready_head = unaff_s8;\n  }\n  return (MHD_Result)unaff_s4;\n}\n\n" comment (function_definition "MHD_Result\ninternal_add_connection\n          (MHD_Daemon *daemon,MHD_socket client_socket,sockaddr *addr,socklen_t addrlen,\n          _Bool external_add,_Bool non_blck)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  uint uVar3;\n  int *piVar4;\n  MemoryPool *pMVar5;\n  sockaddr *psVar6;\n  time_t tVar7;\n  int iVar8;\n  MHD_Connection *pMVar9;\n  MHD_Result MVar10;\n  undefined4 *puVar11;\n  MHD_Daemon *pMVar12;\n  MHD_FLAG MVar13;\n  MHD_Connection *pMVar14;\n  size_t max;\n  MHD_thread_ID_ MVar15;\n  uint uVar16;\n  undefined4 uVar17;\n  MHD_Daemon *pMVar18;\n  int *piVar19;\n  MHD_mutex_ *pMVar20;\n  int iVar21;\n  MHD_Daemon *unaff_s4;\n  MHD_Connection *unaff_s8;\n  undefined1 *puVar22;\n  epoll_event event;\n  \n  piVar19 = (int *)PTR___stack_chk_guard_0003d244;\n  puVar22 = &_gp;\n  iVar2 = *(int *)PTR___stack_chk_guard_0003d244;\n  if ((external_add) && (pMVar18 = daemon->worker_pool, pMVar18 != (MHD_Daemon *)0x0)) {\n    uVar16 = daemon->worker_pool_size;\n    if (uVar16 != 0) {\n      if (uVar16 == 0) {\n        trap(7);\n      }\n      pMVar12 = pMVar18 + (uint)client_socket % uVar16;\n      uVar3 = client_socket + 1;\n      if (pMVar12->connection_limit <= pMVar12->connections) {\n        do {\n          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;\n          if (uVar16 == 0) {\n            trap(7);\n          }\n          pMVar12 = pMVar18 + uVar3 % uVar16;\n          uVar3 = uVar3 + 1;\n        } while (pMVar12->connection_limit <= pMVar12->connections);\n      }\n      unaff_s4 = (MHD_Daemon *)\n                 internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar22 = &_gp;\n    if (((MHD_mutex_ *)addrlen != (MHD_mutex_ *)0x0) && (uVar17 = 0x967, *piVar4 == 9))\n    goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = (MHD_Daemon *)0x0;\n    *piVar4 = 0x17;\n    goto LAB_00019220;\n  }\n  if ((client_socket < 0x400) || ((daemon->options & (MHD_USE_EPOLL|MHD_USE_POLL)) != MHD_NO_FLAG))\n  {\n    unaff_s4 = daemon;\n    if (daemon->connections == daemon->connection_limit) {\nLAB_00019504:\n      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc);\n      addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) ||\n         (uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    pMVar18 = daemon->master;\n    while (pMVar12 = pMVar18, pMVar12 != (MHD_Daemon *)0x0) {\n      unaff_s4 = pMVar12;\n      pMVar18 = pMVar12->master;\n    }\n    if (unaff_s4->per_ip_connection_limit != 0) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (MHD_Connection *)0x0) {\n        MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8);\n        if (MVar10 == MHD_NO) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex;\n        pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18);\n        if (pMVar12 == (MHD_Daemon *)0x0) {\n          puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);\n          if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }\n          MHD_ip_count_unlock(pMVar18);\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar22 = &_gp;\n        MHD_ip_count_lock(pMVar12);\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((daemon->apc == (MHD_AcceptPolicyCallback)0x0) ||\n       (unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),\n       unaff_s4 != (MHD_Daemon *)0x0)) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (MHD_Connection *)0x0) {\n        piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar8 = *piVar4;\n        uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n        iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n        puVar22 = &_gp;\n        if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        max = daemon->pool_size;\n        unaff_s8->sk_cork_on = true;\n        pMVar5 = MHD_pool_create(max);\n        unaff_s8->pool = pMVar5;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n    if (iVar21 != 0) {\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar17 = 0x9b8;\n      puVar22 = &_gp;\n      if (*piVar4 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4c5c,client_socket,0x400);\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar22 = &_gp;\n    if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) || (*piVar4 != 9)) {\nLAB_000195a8:\n      unaff_s4 = (MHD_Daemon *)0x0;\n      *piVar4 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar17 = 0x979;\nLAB_000196e8:\n    puVar11 = *(undefined4 **)(puVar22 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar22 + -0x7fc4))\n              (*puVar11,*(int *)(puVar22 + -0x7fd4) + -0x51b0,uVar17,\n               *(int *)(puVar22 + -0x7fd4) + -0x4cfc);\n  }\n  MHD_ip_limit_del(daemon,addr,addrlen);\nLAB_00019220:\n  while (iVar2 != *piVar19) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    daemon->eready_tail = unaff_s8;\n    unaff_s4 = (MHD_Daemon *)0x1;\n    daemon->eready_head = unaff_s8;\n  }\n  return (MHD_Result)unaff_s4;\n}" type_identifier (function_declarator "internal_add_connection\n          (MHD_Daemon *daemon,MHD_socket client_socket,sockaddr *addr,socklen_t addrlen,\n          _Bool external_add,_Bool non_blck)" identifier (parameter_list "(MHD_Daemon *daemon,MHD_socket client_socket,sockaddr *addr,socklen_t addrlen,\n          _Bool external_add,_Bool non_blck)" ( (parameter_declaration "MHD_Daemon *daemon" type_identifier (pointer_declarator "*daemon" * identifier)) , (parameter_declaration "MHD_socket client_socket" type_identifier identifier) , (parameter_declaration "sockaddr *addr" type_identifier (pointer_declarator "*addr" * identifier)) , (parameter_declaration "socklen_t addrlen" type_identifier identifier) , (parameter_declaration "_Bool external_add" type_identifier identifier) , (parameter_declaration "_Bool non_blck" type_identifier identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  uint uVar3;\n  int *piVar4;\n  MemoryPool *pMVar5;\n  sockaddr *psVar6;\n  time_t tVar7;\n  int iVar8;\n  MHD_Connection *pMVar9;\n  MHD_Result MVar10;\n  undefined4 *puVar11;\n  MHD_Daemon *pMVar12;\n  MHD_FLAG MVar13;\n  MHD_Connection *pMVar14;\n  size_t max;\n  MHD_thread_ID_ MVar15;\n  uint uVar16;\n  undefined4 uVar17;\n  MHD_Daemon *pMVar18;\n  int *piVar19;\n  MHD_mutex_ *pMVar20;\n  int iVar21;\n  MHD_Daemon *unaff_s4;\n  MHD_Connection *unaff_s8;\n  undefined1 *puVar22;\n  epoll_event event;\n  \n  piVar19 = (int *)PTR___stack_chk_guard_0003d244;\n  puVar22 = &_gp;\n  iVar2 = *(int *)PTR___stack_chk_guard_0003d244;\n  if ((external_add) && (pMVar18 = daemon->worker_pool, pMVar18 != (MHD_Daemon *)0x0)) {\n    uVar16 = daemon->worker_pool_size;\n    if (uVar16 != 0) {\n      if (uVar16 == 0) {\n        trap(7);\n      }\n      pMVar12 = pMVar18 + (uint)client_socket % uVar16;\n      uVar3 = client_socket + 1;\n      if (pMVar12->connection_limit <= pMVar12->connections) {\n        do {\n          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;\n          if (uVar16 == 0) {\n            trap(7);\n          }\n          pMVar12 = pMVar18 + uVar3 % uVar16;\n          uVar3 = uVar3 + 1;\n        } while (pMVar12->connection_limit <= pMVar12->connections);\n      }\n      unaff_s4 = (MHD_Daemon *)\n                 internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar22 = &_gp;\n    if (((MHD_mutex_ *)addrlen != (MHD_mutex_ *)0x0) && (uVar17 = 0x967, *piVar4 == 9))\n    goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = (MHD_Daemon *)0x0;\n    *piVar4 = 0x17;\n    goto LAB_00019220;\n  }\n  if ((client_socket < 0x400) || ((daemon->options & (MHD_USE_EPOLL|MHD_USE_POLL)) != MHD_NO_FLAG))\n  {\n    unaff_s4 = daemon;\n    if (daemon->connections == daemon->connection_limit) {\nLAB_00019504:\n      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc);\n      addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) ||\n         (uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    pMVar18 = daemon->master;\n    while (pMVar12 = pMVar18, pMVar12 != (MHD_Daemon *)0x0) {\n      unaff_s4 = pMVar12;\n      pMVar18 = pMVar12->master;\n    }\n    if (unaff_s4->per_ip_connection_limit != 0) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (MHD_Connection *)0x0) {\n        MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8);\n        if (MVar10 == MHD_NO) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex;\n        pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18);\n        if (pMVar12 == (MHD_Daemon *)0x0) {\n          puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);\n          if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }\n          MHD_ip_count_unlock(pMVar18);\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar22 = &_gp;\n        MHD_ip_count_lock(pMVar12);\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((daemon->apc == (MHD_AcceptPolicyCallback)0x0) ||\n       (unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),\n       unaff_s4 != (MHD_Daemon *)0x0)) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (MHD_Connection *)0x0) {\n        piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar8 = *piVar4;\n        uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n        iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n        puVar22 = &_gp;\n        if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        max = daemon->pool_size;\n        unaff_s8->sk_cork_on = true;\n        pMVar5 = MHD_pool_create(max);\n        unaff_s8->pool = pMVar5;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n    if (iVar21 != 0) {\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar17 = 0x9b8;\n      puVar22 = &_gp;\n      if (*piVar4 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4c5c,client_socket,0x400);\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar22 = &_gp;\n    if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) || (*piVar4 != 9)) {\nLAB_000195a8:\n      unaff_s4 = (MHD_Daemon *)0x0;\n      *piVar4 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar17 = 0x979;\nLAB_000196e8:\n    puVar11 = *(undefined4 **)(puVar22 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar22 + -0x7fc4))\n              (*puVar11,*(int *)(puVar22 + -0x7fd4) + -0x51b0,uVar17,\n               *(int *)(puVar22 + -0x7fd4) + -0x4cfc);\n  }\n  MHD_ip_limit_del(daemon,addr,addrlen);\nLAB_00019220:\n  while (iVar2 != *piVar19) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    daemon->eready_tail = unaff_s8;\n    unaff_s4 = (MHD_Daemon *)0x1;\n    daemon->eready_head = unaff_s8;\n  }\n  return (MHD_Result)unaff_s4;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "int *piVar4;" primitive_type (pointer_declarator "*piVar4" * identifier) ;) (declaration "MemoryPool *pMVar5;" type_identifier (pointer_declarator "*pMVar5" * identifier) ;) (declaration "sockaddr *psVar6;" type_identifier (pointer_declarator "*psVar6" * identifier) ;) (declaration "time_t tVar7;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "MHD_Connection *pMVar9;" type_identifier (pointer_declarator "*pMVar9" * identifier) ;) (declaration "MHD_Result MVar10;" type_identifier identifier ;) (declaration "undefined4 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "MHD_Daemon *pMVar12;" type_identifier (pointer_declarator "*pMVar12" * identifier) ;) (declaration "MHD_FLAG MVar13;" type_identifier identifier ;) (declaration "MHD_Connection *pMVar14;" type_identifier (pointer_declarator "*pMVar14" * identifier) ;) (declaration "size_t max;" primitive_type identifier ;) (declaration "MHD_thread_ID_ MVar15;" type_identifier identifier ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "undefined4 uVar17;" type_identifier identifier ;) (declaration "MHD_Daemon *pMVar18;" type_identifier (pointer_declarator "*pMVar18" * identifier) ;) (declaration "int *piVar19;" primitive_type (pointer_declarator "*piVar19" * identifier) ;) (declaration "MHD_mutex_ *pMVar20;" type_identifier (pointer_declarator "*pMVar20" * identifier) ;) (declaration "int iVar21;" primitive_type identifier ;) (declaration "MHD_Daemon *unaff_s4;" type_identifier (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "MHD_Connection *unaff_s8;" type_identifier (pointer_declarator "*unaff_s8" * identifier) ;) (declaration "undefined1 *puVar22;" type_identifier (pointer_declarator "*puVar22" * identifier) ;) (declaration "epoll_event event;" type_identifier identifier ;) (expression_statement "piVar19 = (int *)PTR___stack_chk_guard_0003d244;" (assignment_expression "piVar19 = (int *)PTR___stack_chk_guard_0003d244" identifier = (cast_expression "(int *)PTR___stack_chk_guard_0003d244" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "puVar22 = &_gp;" (assignment_expression "puVar22 = &_gp" identifier = (pointer_expression "&_gp" & identifier)) ;) (expression_statement "iVar2 = *(int *)PTR___stack_chk_guard_0003d244;" (assignment_expression "iVar2 = *(int *)PTR___stack_chk_guard_0003d244" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0003d244" * (cast_expression "(int *)PTR___stack_chk_guard_0003d244" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if ((external_add) && (pMVar18 = daemon->worker_pool, pMVar18 != (MHD_Daemon *)0x0)) {\n    uVar16 = daemon->worker_pool_size;\n    if (uVar16 != 0) {\n      if (uVar16 == 0) {\n        trap(7);\n      }\n      pMVar12 = pMVar18 + (uint)client_socket % uVar16;\n      uVar3 = client_socket + 1;\n      if (pMVar12->connection_limit <= pMVar12->connections) {\n        do {\n          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;\n          if (uVar16 == 0) {\n            trap(7);\n          }\n          pMVar12 = pMVar18 + uVar3 % uVar16;\n          uVar3 = uVar3 + 1;\n        } while (pMVar12->connection_limit <= pMVar12->connections);\n      }\n      unaff_s4 = (MHD_Daemon *)\n                 internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar22 = &_gp;\n    if (((MHD_mutex_ *)addrlen != (MHD_mutex_ *)0x0) && (uVar17 = 0x967, *piVar4 == 9))\n    goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = (MHD_Daemon *)0x0;\n    *piVar4 = 0x17;\n    goto LAB_00019220;\n  }" if (parenthesized_expression "((external_add) && (pMVar18 = daemon->worker_pool, pMVar18 != (MHD_Daemon *)0x0))" ( (binary_expression "(external_add) && (pMVar18 = daemon->worker_pool, pMVar18 != (MHD_Daemon *)0x0)" (parenthesized_expression "(external_add)" ( identifier )) && (parenthesized_expression "(pMVar18 = daemon->worker_pool, pMVar18 != (MHD_Daemon *)0x0)" ( (comma_expression "pMVar18 = daemon->worker_pool, pMVar18 != (MHD_Daemon *)0x0" (assignment_expression "pMVar18 = daemon->worker_pool" identifier = (field_expression "daemon->worker_pool" identifier -> field_identifier)) , (binary_expression "pMVar18 != (MHD_Daemon *)0x0" identifier != (cast_expression "(MHD_Daemon *)0x0" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n    uVar16 = daemon->worker_pool_size;\n    if (uVar16 != 0) {\n      if (uVar16 == 0) {\n        trap(7);\n      }\n      pMVar12 = pMVar18 + (uint)client_socket % uVar16;\n      uVar3 = client_socket + 1;\n      if (pMVar12->connection_limit <= pMVar12->connections) {\n        do {\n          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;\n          if (uVar16 == 0) {\n            trap(7);\n          }\n          pMVar12 = pMVar18 + uVar3 % uVar16;\n          uVar3 = uVar3 + 1;\n        } while (pMVar12->connection_limit <= pMVar12->connections);\n      }\n      unaff_s4 = (MHD_Daemon *)\n                 internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar22 = &_gp;\n    if (((MHD_mutex_ *)addrlen != (MHD_mutex_ *)0x0) && (uVar17 = 0x967, *piVar4 == 9))\n    goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = (MHD_Daemon *)0x0;\n    *piVar4 = 0x17;\n    goto LAB_00019220;\n  }" { (expression_statement "uVar16 = daemon->worker_pool_size;" (assignment_expression "uVar16 = daemon->worker_pool_size" identifier = (field_expression "daemon->worker_pool_size" identifier -> field_identifier)) ;) (if_statement "if (uVar16 != 0) {\n      if (uVar16 == 0) {\n        trap(7);\n      }\n      pMVar12 = pMVar18 + (uint)client_socket % uVar16;\n      uVar3 = client_socket + 1;\n      if (pMVar12->connection_limit <= pMVar12->connections) {\n        do {\n          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;\n          if (uVar16 == 0) {\n            trap(7);\n          }\n          pMVar12 = pMVar18 + uVar3 % uVar16;\n          uVar3 = uVar3 + 1;\n        } while (pMVar12->connection_limit <= pMVar12->connections);\n      }\n      unaff_s4 = (MHD_Daemon *)\n                 internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck);\n      goto LAB_00019220;\n    }" if (parenthesized_expression "(uVar16 != 0)" ( (binary_expression "uVar16 != 0" identifier != number_literal) )) (compound_statement "{\n      if (uVar16 == 0) {\n        trap(7);\n      }\n      pMVar12 = pMVar18 + (uint)client_socket % uVar16;\n      uVar3 = client_socket + 1;\n      if (pMVar12->connection_limit <= pMVar12->connections) {\n        do {\n          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;\n          if (uVar16 == 0) {\n            trap(7);\n          }\n          pMVar12 = pMVar18 + uVar3 % uVar16;\n          uVar3 = uVar3 + 1;\n        } while (pMVar12->connection_limit <= pMVar12->connections);\n      }\n      unaff_s4 = (MHD_Daemon *)\n                 internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck);\n      goto LAB_00019220;\n    }" { (if_statement "if (uVar16 == 0) {\n        trap(7);\n      }" if (parenthesized_expression "(uVar16 == 0)" ( (binary_expression "uVar16 == 0" identifier == number_literal) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "pMVar12 = pMVar18 + (uint)client_socket % uVar16;" (assignment_expression "pMVar12 = pMVar18 + (uint)client_socket % uVar16" identifier = (binary_expression "pMVar18 + (uint)client_socket % uVar16" identifier + (binary_expression "(uint)client_socket % uVar16" (cast_expression "(uint)client_socket" ( (type_descriptor "uint" type_identifier) ) identifier) % identifier))) ;) (expression_statement "uVar3 = client_socket + 1;" (assignment_expression "uVar3 = client_socket + 1" identifier = (binary_expression "client_socket + 1" identifier + number_literal)) ;) (if_statement "if (pMVar12->connection_limit <= pMVar12->connections) {\n        do {\n          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;\n          if (uVar16 == 0) {\n            trap(7);\n          }\n          pMVar12 = pMVar18 + uVar3 % uVar16;\n          uVar3 = uVar3 + 1;\n        } while (pMVar12->connection_limit <= pMVar12->connections);\n      }" if (parenthesized_expression "(pMVar12->connection_limit <= pMVar12->connections)" ( (binary_expression "pMVar12->connection_limit <= pMVar12->connections" (field_expression "pMVar12->connection_limit" identifier -> field_identifier) <= (field_expression "pMVar12->connections" identifier -> field_identifier)) )) (compound_statement "{\n        do {\n          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;\n          if (uVar16 == 0) {\n            trap(7);\n          }\n          pMVar12 = pMVar18 + uVar3 % uVar16;\n          uVar3 = uVar3 + 1;\n        } while (pMVar12->connection_limit <= pMVar12->connections);\n      }" { (do_statement "do {\n          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;\n          if (uVar16 == 0) {\n            trap(7);\n          }\n          pMVar12 = pMVar18 + uVar3 % uVar16;\n          uVar3 = uVar3 + 1;\n        } while (pMVar12->connection_limit <= pMVar12->connections);" do (compound_statement "{\n          if (client_socket + uVar16 == uVar3) goto LAB_000191e0;\n          if (uVar16 == 0) {\n            trap(7);\n          }\n          pMVar12 = pMVar18 + uVar3 % uVar16;\n          uVar3 = uVar3 + 1;\n        }" { (if_statement "if (client_socket + uVar16 == uVar3) goto LAB_000191e0;" if (parenthesized_expression "(client_socket + uVar16 == uVar3)" ( (binary_expression "client_socket + uVar16 == uVar3" (binary_expression "client_socket + uVar16" identifier + identifier) == identifier) )) (goto_statement "goto LAB_000191e0;" goto statement_identifier ;)) (if_statement "if (uVar16 == 0) {\n            trap(7);\n          }" if (parenthesized_expression "(uVar16 == 0)" ( (binary_expression "uVar16 == 0" identifier == number_literal) )) (compound_statement "{\n            trap(7);\n          }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "pMVar12 = pMVar18 + uVar3 % uVar16;" (assignment_expression "pMVar12 = pMVar18 + uVar3 % uVar16" identifier = (binary_expression "pMVar18 + uVar3 % uVar16" identifier + (binary_expression "uVar3 % uVar16" identifier % identifier))) ;) (expression_statement "uVar3 = uVar3 + 1;" (assignment_expression "uVar3 = uVar3 + 1" identifier = (binary_expression "uVar3 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pMVar12->connection_limit <= pMVar12->connections)" ( (binary_expression "pMVar12->connection_limit <= pMVar12->connections" (field_expression "pMVar12->connection_limit" identifier -> field_identifier) <= (field_expression "pMVar12->connections" identifier -> field_identifier)) )) ;) })) (expression_statement "unaff_s4 = (MHD_Daemon *)\n                 internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck);" (assignment_expression "unaff_s4 = (MHD_Daemon *)\n                 internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck)" identifier = (cast_expression "(MHD_Daemon *)\n                 internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck)" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "internal_add_connection(pMVar12,client_socket,addr,addrlen,true,non_blck)" identifier (argument_list "(pMVar12,client_socket,addr,addrlen,true,non_blck)" ( identifier , identifier , identifier , identifier , true , identifier ))))) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (labeled_statement "LAB_000191e0:\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);" statement_identifier : (expression_statement "addrlen = (*(code *)PTR_close_0003d128)(client_socket);" (assignment_expression "addrlen = (*(code *)PTR_close_0003d128)(client_socket)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(client_socket)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(client_socket)" ( identifier )))) ;)) (expression_statement "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "puVar22 = &_gp;" (assignment_expression "puVar22 = &_gp" identifier = (pointer_expression "&_gp" & identifier)) ;) (if_statement "if (((MHD_mutex_ *)addrlen != (MHD_mutex_ *)0x0) && (uVar17 = 0x967, *piVar4 == 9))\n    goto LAB_000196e8;" if (parenthesized_expression "(((MHD_mutex_ *)addrlen != (MHD_mutex_ *)0x0) && (uVar17 = 0x967, *piVar4 == 9))" ( (binary_expression "((MHD_mutex_ *)addrlen != (MHD_mutex_ *)0x0) && (uVar17 = 0x967, *piVar4 == 9)" (parenthesized_expression "((MHD_mutex_ *)addrlen != (MHD_mutex_ *)0x0)" ( (binary_expression "(MHD_mutex_ *)addrlen != (MHD_mutex_ *)0x0" (cast_expression "(MHD_mutex_ *)addrlen" ( (type_descriptor "MHD_mutex_ *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) != (cast_expression "(MHD_mutex_ *)0x0" ( (type_descriptor "MHD_mutex_ *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(uVar17 = 0x967, *piVar4 == 9)" ( (comma_expression "uVar17 = 0x967, *piVar4 == 9" (assignment_expression "uVar17 = 0x967" identifier = number_literal) , (binary_expression "*piVar4 == 9" (pointer_expression "*piVar4" * identifier) == number_literal)) ))) )) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;)) (labeled_statement "LAB_00019214:\n    unaff_s4 = (MHD_Daemon *)0x0;" statement_identifier : (expression_statement "unaff_s4 = (MHD_Daemon *)0x0;" (assignment_expression "unaff_s4 = (MHD_Daemon *)0x0" identifier = (cast_expression "(MHD_Daemon *)0x0" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "*piVar4 = 0x17;" (assignment_expression "*piVar4 = 0x17" (pointer_expression "*piVar4" * identifier) = number_literal) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (if_statement "if ((client_socket < 0x400) || ((daemon->options & (MHD_USE_EPOLL|MHD_USE_POLL)) != MHD_NO_FLAG))\n  {\n    unaff_s4 = daemon;\n    if (daemon->connections == daemon->connection_limit) {\nLAB_00019504:\n      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc);\n      addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) ||\n         (uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    pMVar18 = daemon->master;\n    while (pMVar12 = pMVar18, pMVar12 != (MHD_Daemon *)0x0) {\n      unaff_s4 = pMVar12;\n      pMVar18 = pMVar12->master;\n    }\n    if (unaff_s4->per_ip_connection_limit != 0) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (MHD_Connection *)0x0) {\n        MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8);\n        if (MVar10 == MHD_NO) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex;\n        pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18);\n        if (pMVar12 == (MHD_Daemon *)0x0) {\n          puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);\n          if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }\n          MHD_ip_count_unlock(pMVar18);\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar22 = &_gp;\n        MHD_ip_count_lock(pMVar12);\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((daemon->apc == (MHD_AcceptPolicyCallback)0x0) ||\n       (unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),\n       unaff_s4 != (MHD_Daemon *)0x0)) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (MHD_Connection *)0x0) {\n        piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar8 = *piVar4;\n        uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n        iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n        puVar22 = &_gp;\n        if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        max = daemon->pool_size;\n        unaff_s8->sk_cork_on = true;\n        pMVar5 = MHD_pool_create(max);\n        unaff_s8->pool = pMVar5;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n    if (iVar21 != 0) {\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar17 = 0x9b8;\n      puVar22 = &_gp;\n      if (*piVar4 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4c5c,client_socket,0x400);\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar22 = &_gp;\n    if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) || (*piVar4 != 9)) {\nLAB_000195a8:\n      unaff_s4 = (MHD_Daemon *)0x0;\n      *piVar4 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar17 = 0x979;\nLAB_000196e8:\n    puVar11 = *(undefined4 **)(puVar22 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar22 + -0x7fc4))\n              (*puVar11,*(int *)(puVar22 + -0x7fd4) + -0x51b0,uVar17,\n               *(int *)(puVar22 + -0x7fd4) + -0x4cfc);\n  }" if (parenthesized_expression "((client_socket < 0x400) || ((daemon->options & (MHD_USE_EPOLL|MHD_USE_POLL)) != MHD_NO_FLAG))" ( (binary_expression "(client_socket < 0x400) || ((daemon->options & (MHD_USE_EPOLL|MHD_USE_POLL)) != MHD_NO_FLAG)" (parenthesized_expression "(client_socket < 0x400)" ( (binary_expression "client_socket < 0x400" identifier < number_literal) )) || (parenthesized_expression "((daemon->options & (MHD_USE_EPOLL|MHD_USE_POLL)) != MHD_NO_FLAG)" ( (binary_expression "(daemon->options & (MHD_USE_EPOLL|MHD_USE_POLL)) != MHD_NO_FLAG" (parenthesized_expression "(daemon->options & (MHD_USE_EPOLL|MHD_USE_POLL))" ( (binary_expression "daemon->options & (MHD_USE_EPOLL|MHD_USE_POLL)" (field_expression "daemon->options" identifier -> field_identifier) & (parenthesized_expression "(MHD_USE_EPOLL|MHD_USE_POLL)" ( (binary_expression "MHD_USE_EPOLL|MHD_USE_POLL" identifier | identifier) ))) )) != identifier) ))) )) (compound_statement "{\n    unaff_s4 = daemon;\n    if (daemon->connections == daemon->connection_limit) {\nLAB_00019504:\n      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc);\n      addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) ||\n         (uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    pMVar18 = daemon->master;\n    while (pMVar12 = pMVar18, pMVar12 != (MHD_Daemon *)0x0) {\n      unaff_s4 = pMVar12;\n      pMVar18 = pMVar12->master;\n    }\n    if (unaff_s4->per_ip_connection_limit != 0) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (MHD_Connection *)0x0) {\n        MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8);\n        if (MVar10 == MHD_NO) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex;\n        pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18);\n        if (pMVar12 == (MHD_Daemon *)0x0) {\n          puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);\n          if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }\n          MHD_ip_count_unlock(pMVar18);\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar22 = &_gp;\n        MHD_ip_count_lock(pMVar12);\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((daemon->apc == (MHD_AcceptPolicyCallback)0x0) ||\n       (unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),\n       unaff_s4 != (MHD_Daemon *)0x0)) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (MHD_Connection *)0x0) {\n        piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar8 = *piVar4;\n        uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n        iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n        puVar22 = &_gp;\n        if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        max = daemon->pool_size;\n        unaff_s8->sk_cork_on = true;\n        pMVar5 = MHD_pool_create(max);\n        unaff_s8->pool = pMVar5;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n    if (iVar21 != 0) {\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar17 = 0x9b8;\n      puVar22 = &_gp;\n      if (*piVar4 == 9) goto LAB_000196e8;\n    }\n  }" { (expression_statement "unaff_s4 = daemon;" (assignment_expression "unaff_s4 = daemon" identifier = identifier) ;) (if_statement "if (daemon->connections == daemon->connection_limit) {\nLAB_00019504:\n      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc);\n      addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) ||\n         (uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }" if (parenthesized_expression "(daemon->connections == daemon->connection_limit)" ( (binary_expression "daemon->connections == daemon->connection_limit" (field_expression "daemon->connections" identifier -> field_identifier) == (field_expression "daemon->connection_limit" identifier -> field_identifier)) )) (compound_statement "{\nLAB_00019504:\n      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc);\n      addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) ||\n         (uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }" { (labeled_statement "LAB_00019504:\n      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc);" statement_identifier : (expression_statement "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc);" (call_expression "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc)" identifier (argument_list "(daemon,PTR_DAT_0003d02c + -0x4bfc)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bfc" identifier + number_literal) ))) ;)) (expression_statement "addrlen = (*(code *)PTR_close_0003d128)(client_socket);" (assignment_expression "addrlen = (*(code *)PTR_close_0003d128)(client_socket)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(client_socket)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(client_socket)" ( identifier )))) ;) (expression_statement "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (if_statement "if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) ||\n         (uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9))\n      goto LAB_00019214;" if (parenthesized_expression "(((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) ||\n         (uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9))" ( (binary_expression "((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) ||\n         (uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9)" (parenthesized_expression "((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0)" ( (binary_expression "(MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0" (cast_expression "(MHD_mutex_ *)addrlen" ( (type_descriptor "MHD_mutex_ *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(MHD_mutex_ *)0x0" ( (type_descriptor "MHD_mutex_ *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9)" ( (comma_expression "uVar17 = 0x9a5, puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9" (assignment_expression "uVar17 = 0x9a5" identifier = number_literal) , (comma_expression "puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9" (assignment_expression "puVar11 = (undefined4 *)PTR_mhd_panic_cls_0003d038" identifier = (cast_expression "(undefined4 *)PTR_mhd_panic_cls_0003d038" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "*piVar4 != 9" (pointer_expression "*piVar4" * identifier) != number_literal))) ))) )) (goto_statement "goto LAB_00019214;" goto statement_identifier ;)) (goto_statement "goto LAB_000196ec;" goto statement_identifier ;) })) (expression_statement "pMVar18 = daemon->master;" (assignment_expression "pMVar18 = daemon->master" identifier = (field_expression "daemon->master" identifier -> field_identifier)) ;) (while_statement "while (pMVar12 = pMVar18, pMVar12 != (MHD_Daemon *)0x0) {\n      unaff_s4 = pMVar12;\n      pMVar18 = pMVar12->master;\n    }" while (parenthesized_expression "(pMVar12 = pMVar18, pMVar12 != (MHD_Daemon *)0x0)" ( (comma_expression "pMVar12 = pMVar18, pMVar12 != (MHD_Daemon *)0x0" (assignment_expression "pMVar12 = pMVar18" identifier = identifier) , (binary_expression "pMVar12 != (MHD_Daemon *)0x0" identifier != (cast_expression "(MHD_Daemon *)0x0" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n      unaff_s4 = pMVar12;\n      pMVar18 = pMVar12->master;\n    }" { (expression_statement "unaff_s4 = pMVar12;" (assignment_expression "unaff_s4 = pMVar12" identifier = identifier) ;) (expression_statement "pMVar18 = pMVar12->master;" (assignment_expression "pMVar18 = pMVar12->master" identifier = (field_expression "pMVar12->master" identifier -> field_identifier)) ;) })) (if_statement "if (unaff_s4->per_ip_connection_limit != 0) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (MHD_Connection *)0x0) {\n        MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8);\n        if (MVar10 == MHD_NO) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex;\n        pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18);\n        if (pMVar12 == (MHD_Daemon *)0x0) {\n          puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);\n          if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }\n          MHD_ip_count_unlock(pMVar18);\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar22 = &_gp;\n        MHD_ip_count_lock(pMVar12);\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }" if (parenthesized_expression "(unaff_s4->per_ip_connection_limit != 0)" ( (binary_expression "unaff_s4->per_ip_connection_limit != 0" (field_expression "unaff_s4->per_ip_connection_limit" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (MHD_Connection *)0x0) {\n        MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8);\n        if (MVar10 == MHD_NO) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex;\n        pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18);\n        if (pMVar12 == (MHD_Daemon *)0x0) {\n          puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);\n          if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }\n          MHD_ip_count_unlock(pMVar18);\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar22 = &_gp;\n        MHD_ip_count_lock(pMVar12);\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }" { (expression_statement "unaff_s8 = (MHD_Connection *)(*(code *)PTR_malloc_0003d1e0)(0x18);" (assignment_expression "unaff_s8 = (MHD_Connection *)(*(code *)PTR_malloc_0003d1e0)(0x18)" identifier = (cast_expression "(MHD_Connection *)(*(code *)PTR_malloc_0003d1e0)(0x18)" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_malloc_0003d1e0)(0x18)" (parenthesized_expression "(*(code *)PTR_malloc_0003d1e0)" ( (pointer_expression "*(code *)PTR_malloc_0003d1e0" * (cast_expression "(code *)PTR_malloc_0003d1e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x18)" ( number_literal ))))) ;) (if_statement "if (unaff_s8 != (MHD_Connection *)0x0) {\n        MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8);\n        if (MVar10 == MHD_NO) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex;\n        pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18);\n        if (pMVar12 == (MHD_Daemon *)0x0) {\n          puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);\n          if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }\n          MHD_ip_count_unlock(pMVar18);\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar22 = &_gp;\n        MHD_ip_count_lock(pMVar12);\n        goto LAB_00019cc4;\n      }" if (parenthesized_expression "(unaff_s8 != (MHD_Connection *)0x0)" ( (binary_expression "unaff_s8 != (MHD_Connection *)0x0" identifier != (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8);\n        if (MVar10 == MHD_NO) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex;\n        pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18);\n        if (pMVar12 == (MHD_Daemon *)0x0) {\n          puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);\n          if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }\n          MHD_ip_count_unlock(pMVar18);\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar22 = &_gp;\n        MHD_ip_count_lock(pMVar12);\n        goto LAB_00019cc4;\n      }" { (expression_statement "MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8);" (assignment_expression "MVar10 = MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8)" identifier = (call_expression "MHD_ip_addr_to_key(addr,addrlen,(MHD_IPCount *)unaff_s8)" identifier (argument_list "(addr,addrlen,(MHD_IPCount *)unaff_s8)" ( identifier , identifier , (cast_expression "(MHD_IPCount *)unaff_s8" ( (type_descriptor "MHD_IPCount *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (if_statement "if (MVar10 == MHD_NO) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }" if (parenthesized_expression "(MVar10 == MHD_NO)" ( (binary_expression "MVar10 == MHD_NO" identifier == identifier) )) (compound_statement "{\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }" { (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (goto_statement "goto LAB_000192ac;" goto statement_identifier ;) })) (expression_statement "pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex;" (assignment_expression "pMVar18 = (MHD_Daemon *)&unaff_s4->per_ip_connection_mutex" identifier = (cast_expression "(MHD_Daemon *)&unaff_s4->per_ip_connection_mutex" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&unaff_s4->per_ip_connection_mutex" & (field_expression "unaff_s4->per_ip_connection_mutex" identifier -> field_identifier)))) ;) (expression_statement "pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18);" (assignment_expression "pMVar12 = (MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18)" identifier = (cast_expression "(MHD_Daemon *)(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18)" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar18)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" ( (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" * (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pMVar18)" ( identifier ))))) ;) (if_statement "if (pMVar12 == (MHD_Daemon *)0x0) {\n          puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);\n          if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }\n          MHD_ip_count_unlock(pMVar18);\n          goto LAB_000196b4;\n        }" if (parenthesized_expression "(pMVar12 == (MHD_Daemon *)0x0)" ( (binary_expression "pMVar12 == (MHD_Daemon *)0x0" identifier == (cast_expression "(MHD_Daemon *)0x0" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);\n          if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }\n          MHD_ip_count_unlock(pMVar18);\n          goto LAB_000196b4;\n        }" { (expression_statement "puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760);" (assignment_expression "puVar11 = (undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760)" identifier = (cast_expression "(undefined4 *)\n                    (*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_tsearch_0003d1a4)\n                              (unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760)" (parenthesized_expression "(*(code *)PTR_tsearch_0003d1a4)" ( (pointer_expression "*(code *)PTR_tsearch_0003d1a4" * (cast_expression "(code *)PTR_tsearch_0003d1a4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8,&unaff_s4->per_ip_connection_count,PTR_0003d028 + 0x7760)" ( identifier , (pointer_expression "&unaff_s4->per_ip_connection_count" & (field_expression "unaff_s4->per_ip_connection_count" identifier -> field_identifier)) , (binary_expression "PTR_0003d028 + 0x7760" identifier + number_literal) ))))) ;) (if_statement "if (puVar11 == (undefined4 *)0x0) {\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }" if (parenthesized_expression "(puVar11 == (undefined4 *)0x0)" ( (binary_expression "puVar11 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n            if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }" { (expression_statement "MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28);" (call_expression "MHD_DLOG(unaff_s4,PTR_DAT_0003d02c + -0x4c28)" identifier (argument_list "(unaff_s4,PTR_DAT_0003d02c + -0x4c28)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4c28" identifier + number_literal) ))) ;) (expression_statement "iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();" (assignment_expression "iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)()" identifier = (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)()" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" ( (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" * (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar21 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }" if (parenthesized_expression "(iVar21 == 0)" ( (binary_expression "iVar21 == 0" identifier == number_literal) )) (compound_statement "{\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }" { (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (goto_statement "goto LAB_00019504;" goto statement_identifier ;) })) }) (else_clause "else {\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }" else (compound_statement "{\n            pMVar9 = (MHD_Connection *)*puVar11;\n            if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }\n          }" { (expression_statement "pMVar9 = (MHD_Connection *)*puVar11;" (assignment_expression "pMVar9 = (MHD_Connection *)*puVar11" identifier = (cast_expression "(MHD_Connection *)*puVar11" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar11" * identifier))) ;) (if_statement "if (unaff_s8 != pMVar9) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }" if (parenthesized_expression "(unaff_s8 != pMVar9)" ( (binary_expression "unaff_s8 != pMVar9" identifier != identifier) )) (compound_statement "{\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }" { (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) })) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" identifier = identifier) ;) (if_statement "if (pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit) {\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }" if (parenthesized_expression "(pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit)" ( (binary_expression "pMVar9->prevX < (MHD_Connection *)unaff_s4->per_ip_connection_limit" (field_expression "pMVar9->prevX" identifier -> field_identifier) < (cast_expression "(MHD_Connection *)unaff_s4->per_ip_connection_limit" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "unaff_s4->per_ip_connection_limit" identifier -> field_identifier))) )) (compound_statement "{\n              pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);\n              iVar21 = (*(code *)puVar1)();\n              if (iVar21 == 0) goto LAB_000192ac;\n            }" { (expression_statement "pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1);" (assignment_expression "pMVar9->prevX = (MHD_Connection *)((int)&pMVar9->prevX->nextE + 1)" (field_expression "pMVar9->prevX" identifier -> field_identifier) = (cast_expression "(MHD_Connection *)((int)&pMVar9->prevX->nextE + 1)" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pMVar9->prevX->nextE + 1)" ( (binary_expression "(int)&pMVar9->prevX->nextE + 1" (cast_expression "(int)&pMVar9->prevX->nextE" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pMVar9->prevX->nextE" & (field_expression "pMVar9->prevX->nextE" (field_expression "pMVar9->prevX" identifier -> field_identifier) -> field_identifier))) + number_literal) )))) ;) (expression_statement "iVar21 = (*(code *)puVar1)();" (assignment_expression "iVar21 = (*(code *)puVar1)()" identifier = (call_expression "(*(code *)puVar1)()" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar21 == 0) goto LAB_000192ac;" if (parenthesized_expression "(iVar21 == 0)" ( (binary_expression "iVar21 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000192ac;" goto statement_identifier ;)) }) (else_clause "else {\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }" else (compound_statement "{\n              iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();\n              if (iVar21 == 0) goto LAB_00019504;\n            }" { (expression_statement "iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)();" (assignment_expression "iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)()" identifier = (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)()" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" ( (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" * (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar21 == 0) goto LAB_00019504;" if (parenthesized_expression "(iVar21 == 0)" ( (binary_expression "iVar21 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00019504;" goto statement_identifier ;)) }))) }))) (expression_statement "MHD_ip_count_unlock(pMVar18);" (call_expression "MHD_ip_count_unlock(pMVar18)" identifier (argument_list "(pMVar18)" ( identifier ))) ;) (goto_statement "goto LAB_000196b4;" goto statement_identifier ;) })) (labeled_statement "LAB_00019cb4:\n        puVar22 = &_gp;" statement_identifier : (expression_statement "puVar22 = &_gp;" (assignment_expression "puVar22 = &_gp" identifier = (pointer_expression "&_gp" & identifier)) ;)) (expression_statement "MHD_ip_count_lock(pMVar12);" (call_expression "MHD_ip_count_lock(pMVar12)" identifier (argument_list "(pMVar12)" ( identifier ))) ;) (goto_statement "goto LAB_00019cc4;" goto statement_identifier ;) })) (goto_statement "goto LAB_00019504;" goto statement_identifier ;) })) (labeled_statement "LAB_000192ac:\n    if ((daemon->apc == (MHD_AcceptPolicyCallback)0x0) ||\n       (unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),\n       unaff_s4 != (MHD_Daemon *)0x0)) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (MHD_Connection *)0x0) {\n        piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar8 = *piVar4;\n        uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n        iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n        puVar22 = &_gp;\n        if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        max = daemon->pool_size;\n        unaff_s8->sk_cork_on = true;\n        pMVar5 = MHD_pool_create(max);\n        unaff_s8->pool = pMVar5;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" statement_identifier : (if_statement "if ((daemon->apc == (MHD_AcceptPolicyCallback)0x0) ||\n       (unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),\n       unaff_s4 != (MHD_Daemon *)0x0)) {\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (MHD_Connection *)0x0) {\n        piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar8 = *piVar4;\n        uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n        iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n        puVar22 = &_gp;\n        if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        max = daemon->pool_size;\n        unaff_s8->sk_cork_on = true;\n        pMVar5 = MHD_pool_create(max);\n        unaff_s8->pool = pMVar5;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" if (parenthesized_expression "((daemon->apc == (MHD_AcceptPolicyCallback)0x0) ||\n       (unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),\n       unaff_s4 != (MHD_Daemon *)0x0))" ( (binary_expression "(daemon->apc == (MHD_AcceptPolicyCallback)0x0) ||\n       (unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),\n       unaff_s4 != (MHD_Daemon *)0x0)" (parenthesized_expression "(daemon->apc == (MHD_AcceptPolicyCallback)0x0)" ( (binary_expression "daemon->apc == (MHD_AcceptPolicyCallback)0x0" (field_expression "daemon->apc" identifier -> field_identifier) == (cast_expression "(MHD_AcceptPolicyCallback)0x0" ( (type_descriptor "MHD_AcceptPolicyCallback" type_identifier) ) number_literal)) )) || (parenthesized_expression "(unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),\n       unaff_s4 != (MHD_Daemon *)0x0)" ( (comma_expression "unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),\n       unaff_s4 != (MHD_Daemon *)0x0" (assignment_expression "unaff_s4 = (MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen)" identifier = (cast_expression "(MHD_Daemon *)(*daemon->apc)(daemon->apc_cls,addr,addrlen)" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*daemon->apc)(daemon->apc_cls,addr,addrlen)" (parenthesized_expression "(*daemon->apc)" ( (pointer_expression "*daemon->apc" * (field_expression "daemon->apc" identifier -> field_identifier)) )) (argument_list "(daemon->apc_cls,addr,addrlen)" ( (field_expression "daemon->apc_cls" identifier -> field_identifier) , identifier , identifier ))))) , (binary_expression "unaff_s4 != (MHD_Daemon *)0x0" identifier != (cast_expression "(MHD_Daemon *)0x0" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) ))) )) (compound_statement "{\n      unaff_s8 = (MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (MHD_Connection *)0x0) {\n        piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar8 = *piVar4;\n        uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n        iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n        puVar22 = &_gp;\n        if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        max = daemon->pool_size;\n        unaff_s8->sk_cork_on = true;\n        pMVar5 = MHD_pool_create(max);\n        unaff_s8->pool = pMVar5;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" { (expression_statement "unaff_s8 = (MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0);" (assignment_expression "unaff_s8 = (MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0)" identifier = (cast_expression "(MHD_Connection *)(*(code *)PTR_calloc_0003d120)(1,0xf0)" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_calloc_0003d120)(1,0xf0)" (parenthesized_expression "(*(code *)PTR_calloc_0003d120)" ( (pointer_expression "*(code *)PTR_calloc_0003d120" * (cast_expression "(code *)PTR_calloc_0003d120" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(1,0xf0)" ( number_literal , number_literal ))))) ;) (if_statement "if (unaff_s8 == (MHD_Connection *)0x0) {\n        piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar8 = *piVar4;\n        uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n        iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n        puVar22 = &_gp;\n        if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        max = daemon->pool_size;\n        unaff_s8->sk_cork_on = true;\n        pMVar5 = MHD_pool_create(max);\n        unaff_s8->pool = pMVar5;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }\n      }" if (parenthesized_expression "(unaff_s8 == (MHD_Connection *)0x0)" ( (binary_expression "unaff_s8 == (MHD_Connection *)0x0" identifier == (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar8 = *piVar4;\n        uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n        iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n        puVar22 = &_gp;\n        if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }\n      }" { (expression_statement "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar8 = *piVar4;" (assignment_expression "iVar8 = *piVar4" identifier = (pointer_expression "*piVar4" * identifier)) ;) (expression_statement "uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);" (assignment_expression "uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar8)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8)" ( identifier )))) ;) (expression_statement "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);" (call_expression "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17)" identifier (argument_list "(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bbc" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar21 = (*(code *)PTR_close_0003d128)(client_socket);" (assignment_expression "iVar21 = (*(code *)PTR_close_0003d128)(client_socket)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(client_socket)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(client_socket)" ( identifier )))) ;) (expression_statement "puVar22 = &_gp;" (assignment_expression "puVar22 = &_gp" identifier = (pointer_expression "&_gp" & identifier)) ;) (if_statement "if ((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }" if (parenthesized_expression "((iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9))" ( (binary_expression "(iVar21 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)" (parenthesized_expression "(iVar21 == 0)" ( (binary_expression "iVar21 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar17 = 0x9ca, *piVar4 != 9)" ( (comma_expression "uVar17 = 0x9ca, *piVar4 != 9" (assignment_expression "uVar17 = 0x9ca" identifier = number_literal) , (binary_expression "*piVar4 != 9" (pointer_expression "*piVar4" * identifier) != number_literal)) ))) )) (compound_statement "{\n          unaff_s4 = (MHD_Daemon *)0x0;\n          MHD_ip_limit_del(daemon,addr,addrlen);\n          *piVar4 = iVar8;\n          goto LAB_00019220;\n        }" { (expression_statement "unaff_s4 = (MHD_Daemon *)0x0;" (assignment_expression "unaff_s4 = (MHD_Daemon *)0x0" identifier = (cast_expression "(MHD_Daemon *)0x0" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "MHD_ip_limit_del(daemon,addr,addrlen);" (call_expression "MHD_ip_limit_del(daemon,addr,addrlen)" identifier (argument_list "(daemon,addr,addrlen)" ( identifier , identifier , identifier ))) ;) (expression_statement "*piVar4 = iVar8;" (assignment_expression "*piVar4 = iVar8" (pointer_expression "*piVar4" * identifier) = identifier) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }) (else_clause "else {\n        max = daemon->pool_size;\n        unaff_s8->sk_cork_on = true;\n        pMVar5 = MHD_pool_create(max);\n        unaff_s8->pool = pMVar5;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }\n      }" else (compound_statement "{\n        max = daemon->pool_size;\n        unaff_s8->sk_cork_on = true;\n        pMVar5 = MHD_pool_create(max);\n        unaff_s8->pool = pMVar5;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }\n      }" { (expression_statement "max = daemon->pool_size;" (assignment_expression "max = daemon->pool_size" identifier = (field_expression "daemon->pool_size" identifier -> field_identifier)) ;) (expression_statement "unaff_s8->sk_cork_on = true;" (assignment_expression "unaff_s8->sk_cork_on = true" (field_expression "unaff_s8->sk_cork_on" identifier -> field_identifier) = true) ;) (expression_statement "pMVar5 = MHD_pool_create(max);" (assignment_expression "pMVar5 = MHD_pool_create(max)" identifier = (call_expression "MHD_pool_create(max)" identifier (argument_list "(max)" ( identifier )))) ;) (expression_statement "unaff_s8->pool = pMVar5;" (assignment_expression "unaff_s8->pool = pMVar5" (field_expression "unaff_s8->pool" identifier -> field_identifier) = identifier) ;) (expression_statement "puVar1 = PTR_malloc_0003d1e0;" (assignment_expression "puVar1 = PTR_malloc_0003d1e0" identifier = identifier) ;) (if_statement "if (pMVar5 == (MemoryPool *)0x0) {\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }" if (parenthesized_expression "(pMVar5 == (MemoryPool *)0x0)" ( (binary_expression "pMVar5 == (MemoryPool *)0x0" identifier == (cast_expression "(MemoryPool *)0x0" ( (type_descriptor "MemoryPool *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          puVar22 = &_gp;\n          if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }\n        }" { (expression_statement "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4);" (assignment_expression "uVar17 = (*(code *)PTR_strerror_0003d1dc)(*piVar4)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(*piVar4)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*piVar4)" ( (pointer_expression "*piVar4" * identifier) )))) ;) (expression_statement "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);" (call_expression "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17)" identifier (argument_list "(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bbc" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar21 = (*(code *)PTR_close_0003d128)(client_socket);" (assignment_expression "iVar21 = (*(code *)PTR_close_0003d128)(client_socket)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(client_socket)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(client_socket)" ( identifier )))) ;) (expression_statement "puVar22 = &_gp;" (assignment_expression "puVar22 = &_gp" identifier = (pointer_expression "&_gp" & identifier)) ;) (if_statement "if ((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }" if (parenthesized_expression "((iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9))" ( (binary_expression "(iVar21 == 0) || (uVar17 = 0x9da, *piVar4 != 9)" (parenthesized_expression "(iVar21 == 0)" ( (binary_expression "iVar21 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar17 = 0x9da, *piVar4 != 9)" ( (comma_expression "uVar17 = 0x9da, *piVar4 != 9" (assignment_expression "uVar17 = 0x9da" identifier = number_literal) , (binary_expression "*piVar4 != 9" (pointer_expression "*piVar4" * identifier) != number_literal)) ))) )) (compound_statement "{\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = 0xc;\n            goto LAB_00019220;\n          }" { (expression_statement "unaff_s4 = (MHD_Daemon *)0x0;" (assignment_expression "unaff_s4 = (MHD_Daemon *)0x0" identifier = (cast_expression "(MHD_Daemon *)0x0" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "MHD_ip_limit_del(daemon,addr,addrlen);" (call_expression "MHD_ip_limit_del(daemon,addr,addrlen)" identifier (argument_list "(daemon,addr,addrlen)" ( identifier , identifier , identifier ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "*piVar4 = 0xc;" (assignment_expression "*piVar4 = 0xc" (pointer_expression "*piVar4" * identifier) = number_literal) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }) (else_clause "else {\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }" else (compound_statement "{\n          unaff_s8->connection_timeout = daemon->connection_timeout;\n          psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);\n          unaff_s8->addr = psVar6;\n          if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar8 = *piVar4;\n          uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);\n          MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);\n          iVar21 = (*(code *)PTR_close_0003d128)(client_socket);\n          if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }\n        }" { (expression_statement "unaff_s8->connection_timeout = daemon->connection_timeout;" (assignment_expression "unaff_s8->connection_timeout = daemon->connection_timeout" (field_expression "unaff_s8->connection_timeout" identifier -> field_identifier) = (field_expression "daemon->connection_timeout" identifier -> field_identifier)) ;) (expression_statement "psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen);" (assignment_expression "psVar6 = (sockaddr *)(*(code *)puVar1)(addrlen)" identifier = (cast_expression "(sockaddr *)(*(code *)puVar1)(addrlen)" ( (type_descriptor "sockaddr *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)puVar1)(addrlen)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(addrlen)" ( identifier ))))) ;) (expression_statement "unaff_s8->addr = psVar6;" (assignment_expression "unaff_s8->addr = psVar6" (field_expression "unaff_s8->addr" identifier -> field_identifier) = identifier) ;) (if_statement "if (psVar6 != (sockaddr *)0x0) {\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }" if (parenthesized_expression "(psVar6 != (sockaddr *)0x0)" ( (binary_expression "psVar6 != (sockaddr *)0x0" identifier != (cast_expression "(sockaddr *)0x0" ( (type_descriptor "sockaddr *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            (*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);\n            unaff_s8->addr_len = addrlen;\n            unaff_s8->socket_fd = client_socket;\n            unaff_s8->sk_nonblck = non_blck;\n            unaff_s8->daemon = daemon;\n            tVar7 = MHD_monotonic_sec_counter();\n            MVar13 = daemon->options;\n            unaff_s8->last_activity = tVar7;\n            if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }\n            pMVar20 = &daemon->cleanup_connection_mutex;\n            MHD_set_http_callbacks_(unaff_s8);\n            iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n            uVar17 = 0xa5d;\n            if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }\n            pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }" { (expression_statement "(*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen);" (call_expression "(*(code *)PTR_memcpy_0003d248)(psVar6,addr,addrlen)" (parenthesized_expression "(*(code *)PTR_memcpy_0003d248)" ( (pointer_expression "*(code *)PTR_memcpy_0003d248" * (cast_expression "(code *)PTR_memcpy_0003d248" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(psVar6,addr,addrlen)" ( identifier , identifier , identifier ))) ;) (expression_statement "unaff_s8->addr_len = addrlen;" (assignment_expression "unaff_s8->addr_len = addrlen" (field_expression "unaff_s8->addr_len" identifier -> field_identifier) = identifier) ;) (expression_statement "unaff_s8->socket_fd = client_socket;" (assignment_expression "unaff_s8->socket_fd = client_socket" (field_expression "unaff_s8->socket_fd" identifier -> field_identifier) = identifier) ;) (expression_statement "unaff_s8->sk_nonblck = non_blck;" (assignment_expression "unaff_s8->sk_nonblck = non_blck" (field_expression "unaff_s8->sk_nonblck" identifier -> field_identifier) = identifier) ;) (expression_statement "unaff_s8->daemon = daemon;" (assignment_expression "unaff_s8->daemon = daemon" (field_expression "unaff_s8->daemon" identifier -> field_identifier) = identifier) ;) (expression_statement "tVar7 = MHD_monotonic_sec_counter();" (assignment_expression "tVar7 = MHD_monotonic_sec_counter()" identifier = (call_expression "MHD_monotonic_sec_counter()" identifier (argument_list "()" ( )))) ;) (expression_statement "MVar13 = daemon->options;" (assignment_expression "MVar13 = daemon->options" identifier = (field_expression "daemon->options" identifier -> field_identifier)) ;) (expression_statement "unaff_s8->last_activity = tVar7;" (assignment_expression "unaff_s8->last_activity = tVar7" (field_expression "unaff_s8->last_activity" identifier -> field_identifier) = identifier) ;) (if_statement "if ((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG) {\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }" if (parenthesized_expression "((MVar13 & MHD_USE_SSL) != MHD_NO_FLAG)" ( (binary_expression "(MVar13 & MHD_USE_SSL) != MHD_NO_FLAG" (parenthesized_expression "(MVar13 & MHD_USE_SSL)" ( (binary_expression "MVar13 & MHD_USE_SSL" identifier & identifier) )) != identifier) )) (compound_statement "{\n              iVar21 = 0x16;\n              goto LAB_00019374;\n            }" { (expression_statement "iVar21 = 0x16;" (assignment_expression "iVar21 = 0x16" identifier = number_literal) ;) (goto_statement "goto LAB_00019374;" goto statement_identifier ;) })) (expression_statement "pMVar20 = &daemon->cleanup_connection_mutex;" (assignment_expression "pMVar20 = &daemon->cleanup_connection_mutex" identifier = (pointer_expression "&daemon->cleanup_connection_mutex" & (field_expression "daemon->cleanup_connection_mutex" identifier -> field_identifier))) ;) (expression_statement "MHD_set_http_callbacks_(unaff_s8);" (call_expression "MHD_set_http_callbacks_(unaff_s8)" identifier (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);" (assignment_expression "iVar21 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" ( (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" * (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pMVar20)" ( identifier )))) ;) (expression_statement "uVar17 = 0xa5d;" (assignment_expression "uVar17 = 0xa5d" identifier = number_literal) ;) (if_statement "if (iVar21 == 0) {\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }" if (parenthesized_expression "(iVar21 == 0)" ( (binary_expression "iVar21 == 0" identifier == number_literal) )) (compound_statement "{\n              if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }" { (if_statement "if (daemon->connections < daemon->connection_limit) {\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" if (parenthesized_expression "(daemon->connections < daemon->connection_limit)" ( (binary_expression "daemon->connections < daemon->connection_limit" (field_expression "daemon->connections" identifier -> field_identifier) < (field_expression "daemon->connection_limit" identifier -> field_identifier)) )) (compound_statement "{\n                daemon->connections = daemon->connections + 1;\n                if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }\n                pMVar9 = daemon->connections_head;\n                pMVar14 = daemon->connections_tail;\n                unaff_s8->prev = (MHD_Connection *)0x0;\n                unaff_s8->next = pMVar9;\n                if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                daemon->connections_head = unaff_s8;\n                iVar21 = (*(code *)puVar1)(pMVar20);\n                uVar17 = 0xa7b;\n                if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }" { (expression_statement "daemon->connections = daemon->connections + 1;" (assignment_expression "daemon->connections = daemon->connections + 1" (field_expression "daemon->connections" identifier -> field_identifier) = (binary_expression "daemon->connections + 1" (field_expression "daemon->connections" identifier -> field_identifier) + number_literal)) ;) (if_statement "if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }" if (parenthesized_expression "((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)" ( (binary_expression "(daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG" (parenthesized_expression "(daemon->options & MHD_USE_THREAD_PER_CONNECTION)" ( (binary_expression "daemon->options & MHD_USE_THREAD_PER_CONNECTION" (field_expression "daemon->options" identifier -> field_identifier) & identifier) )) == identifier) )) (compound_statement "{\n                  pMVar9 = daemon->normal_timeout_head;\n                  pMVar14 = daemon->normal_timeout_tail;\n                  unaff_s8->prevX = (MHD_Connection *)0x0;\n                  unaff_s8->nextX = pMVar9;\n                  if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }\n                  daemon->normal_timeout_head = unaff_s8;\n                }" { (expression_statement "pMVar9 = daemon->normal_timeout_head;" (assignment_expression "pMVar9 = daemon->normal_timeout_head" identifier = (field_expression "daemon->normal_timeout_head" identifier -> field_identifier)) ;) (expression_statement "pMVar14 = daemon->normal_timeout_tail;" (assignment_expression "pMVar14 = daemon->normal_timeout_tail" identifier = (field_expression "daemon->normal_timeout_tail" identifier -> field_identifier)) ;) (expression_statement "unaff_s8->prevX = (MHD_Connection *)0x0;" (assignment_expression "unaff_s8->prevX = (MHD_Connection *)0x0" (field_expression "unaff_s8->prevX" identifier -> field_identifier) = (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s8->nextX = pMVar9;" (assignment_expression "unaff_s8->nextX = pMVar9" (field_expression "unaff_s8->nextX" identifier -> field_identifier) = identifier) ;) (if_statement "if (pMVar14 == (MHD_Connection *)0x0) {\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }\n                  else {\n                    pMVar9->prevX = unaff_s8;\n                  }" if (parenthesized_expression "(pMVar14 == (MHD_Connection *)0x0)" ( (binary_expression "pMVar14 == (MHD_Connection *)0x0" identifier == (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    daemon->normal_timeout_tail = unaff_s8;\n                  }" { (expression_statement "daemon->normal_timeout_tail = unaff_s8;" (assignment_expression "daemon->normal_timeout_tail = unaff_s8" (field_expression "daemon->normal_timeout_tail" identifier -> field_identifier) = identifier) ;) }) (else_clause "else {\n                    pMVar9->prevX = unaff_s8;\n                  }" else (compound_statement "{\n                    pMVar9->prevX = unaff_s8;\n                  }" { (expression_statement "pMVar9->prevX = unaff_s8;" (assignment_expression "pMVar9->prevX = unaff_s8" (field_expression "pMVar9->prevX" identifier -> field_identifier) = identifier) ;) }))) (expression_statement "daemon->normal_timeout_head = unaff_s8;" (assignment_expression "daemon->normal_timeout_head = unaff_s8" (field_expression "daemon->normal_timeout_head" identifier -> field_identifier) = identifier) ;) })) (expression_statement "pMVar9 = daemon->connections_head;" (assignment_expression "pMVar9 = daemon->connections_head" identifier = (field_expression "daemon->connections_head" identifier -> field_identifier)) ;) (expression_statement "pMVar14 = daemon->connections_tail;" (assignment_expression "pMVar14 = daemon->connections_tail" identifier = (field_expression "daemon->connections_tail" identifier -> field_identifier)) ;) (expression_statement "unaff_s8->prev = (MHD_Connection *)0x0;" (assignment_expression "unaff_s8->prev = (MHD_Connection *)0x0" (field_expression "unaff_s8->prev" identifier -> field_identifier) = (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s8->next = pMVar9;" (assignment_expression "unaff_s8->next = pMVar9" (field_expression "unaff_s8->next" identifier -> field_identifier) = identifier) ;) (if_statement "if (pMVar14 == (MHD_Connection *)0x0) {\n                  daemon->connections_tail = unaff_s8;\n                }\n                else {\n                  pMVar9->prev = unaff_s8;\n                }" if (parenthesized_expression "(pMVar14 == (MHD_Connection *)0x0)" ( (binary_expression "pMVar14 == (MHD_Connection *)0x0" identifier == (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                  daemon->connections_tail = unaff_s8;\n                }" { (expression_statement "daemon->connections_tail = unaff_s8;" (assignment_expression "daemon->connections_tail = unaff_s8" (field_expression "daemon->connections_tail" identifier -> field_identifier) = identifier) ;) }) (else_clause "else {\n                  pMVar9->prev = unaff_s8;\n                }" else (compound_statement "{\n                  pMVar9->prev = unaff_s8;\n                }" { (expression_statement "pMVar9->prev = unaff_s8;" (assignment_expression "pMVar9->prev = unaff_s8" (field_expression "pMVar9->prev" identifier -> field_identifier) = identifier) ;) }))) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" identifier = identifier) ;) (expression_statement "daemon->connections_head = unaff_s8;" (assignment_expression "daemon->connections_head = unaff_s8" (field_expression "daemon->connections_head" identifier -> field_identifier) = identifier) ;) (expression_statement "iVar21 = (*(code *)puVar1)(pMVar20);" (assignment_expression "iVar21 = (*(code *)puVar1)(pMVar20)" identifier = (call_expression "(*(code *)puVar1)(pMVar20)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pMVar20)" ( identifier )))) ;) (expression_statement "uVar17 = 0xa7b;" (assignment_expression "uVar17 = 0xa7b" identifier = number_literal) ;) (if_statement "if (iVar21 == 0) {\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }" if (parenthesized_expression "(iVar21 == 0)" ( (binary_expression "iVar21 == 0" identifier == number_literal) )) (compound_statement "{\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }\n                  MVar13 = daemon->options;\n                  if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  event.events = 0x80000007;\n                  event.data.fd = (int)unaff_s8;\n                  iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);\n                  if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }\n                  piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar21 = *piVar4;\n                  uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);\nLAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }\n                  iVar8 = (*(code *)PTR_close_0003d128)(client_socket);\n                  if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }\n                  pMVar20 = &daemon->cleanup_connection_mutex;\n                  MHD_ip_limit_del(daemon,addr,addrlen);\n                  iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);\n                  addrlen = (socklen_t)pMVar20;\n                  if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }\n                  pMVar9 = unaff_s8->next;\n                  if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }\n                  if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8->next = (MHD_Connection *)0x0;\n                  unaff_s8->prev = (MHD_Connection *)0x0;\n                  iVar8 = (*(code *)puVar1)(pMVar20);\n                  if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }" { (if_statement "if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }" if (parenthesized_expression "(daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0)" ( (binary_expression "daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0" (field_expression "daemon->notify_connection" identifier -> field_identifier) != (cast_expression "(MHD_NotifyConnectionCallback)0x0" ( (type_descriptor "MHD_NotifyConnectionCallback" type_identifier) ) number_literal)) )) (compound_statement "{\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);\n                  }" { (expression_statement "(*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED);" (call_expression "(*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED)" (parenthesized_expression "(*daemon->notify_connection)" ( (pointer_expression "*daemon->notify_connection" * (field_expression "daemon->notify_connection" identifier -> field_identifier)) )) (argument_list "(daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_STARTED)" ( (field_expression "daemon->notify_connection_cls" identifier -> field_identifier) , identifier , (pointer_expression "&unaff_s8->socket_context" & (field_expression "unaff_s8->socket_context" identifier -> field_identifier)) , identifier ))) ;) })) (expression_statement "MVar13 = daemon->options;" (assignment_expression "MVar13 = daemon->options" identifier = (field_expression "daemon->options" identifier -> field_identifier)) ;) (if_statement "if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" if (parenthesized_expression "((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)" ( (binary_expression "(MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG" (parenthesized_expression "(MVar13 & MHD_USE_THREAD_PER_CONNECTION)" ( (binary_expression "MVar13 & MHD_USE_THREAD_PER_CONNECTION" identifier & identifier) )) == identifier) )) (compound_statement "{\n                    MVar15 = (daemon->pid).ID;\n                    (unaff_s8->pid).handle = (daemon->pid).handle;\n                    (unaff_s8->pid).ID = MVar15;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }\n                  }" { (expression_statement "MVar15 = (daemon->pid).ID;" (assignment_expression "MVar15 = (daemon->pid).ID" identifier = (field_expression "(daemon->pid).ID" (parenthesized_expression "(daemon->pid)" ( (field_expression "daemon->pid" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "(unaff_s8->pid).handle = (daemon->pid).handle;" (assignment_expression "(unaff_s8->pid).handle = (daemon->pid).handle" (field_expression "(unaff_s8->pid).handle" (parenthesized_expression "(unaff_s8->pid)" ( (field_expression "unaff_s8->pid" identifier -> field_identifier) )) . field_identifier) = (field_expression "(daemon->pid).handle" (parenthesized_expression "(daemon->pid)" ( (field_expression "daemon->pid" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "(unaff_s8->pid).ID = MVar15;" (assignment_expression "(unaff_s8->pid).ID = MVar15" (field_expression "(unaff_s8->pid).ID" (parenthesized_expression "(unaff_s8->pid)" ( (field_expression "unaff_s8->pid" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (if_statement "if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }" if (parenthesized_expression "((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG)" ( (binary_expression "(MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG" (parenthesized_expression "(MVar13 & MHD_USE_EPOLL)" ( (binary_expression "MVar13 & MHD_USE_EPOLL" identifier & identifier) )) == identifier) )) (compound_statement "{\nLAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;\n                      goto LAB_00019220;\n                    }" { (labeled_statement "LAB_00019b50:\n                      if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" statement_identifier : (if_statement "if ((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )) {\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" if (parenthesized_expression "((((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         ))" ( (binary_expression "(((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)) &&\n                         (piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )" (parenthesized_expression "(((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1))" ( (binary_expression "((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)) &&\n                          (iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)" (parenthesized_expression "((external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1))" ( (binary_expression "(external_add) && (iVar21 = (daemon->itc).fd, iVar21 != -1)" (parenthesized_expression "(external_add)" ( identifier )) && (parenthesized_expression "(iVar21 = (daemon->itc).fd, iVar21 != -1)" ( (comma_expression "iVar21 = (daemon->itc).fd, iVar21 != -1" (assignment_expression "iVar21 = (daemon->itc).fd" identifier = (field_expression "(daemon->itc).fd" (parenthesized_expression "(daemon->itc)" ( (field_expression "daemon->itc" identifier -> field_identifier) )) . field_identifier)) , (binary_expression "iVar21 != -1" identifier != number_literal)) ))) )) && (parenthesized_expression "(iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1)" ( (comma_expression "iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8), iVar21 < 1" (assignment_expression "iVar21 = (*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8)" identifier = (call_expression "(*(code *)PTR_write_0003d1b0)\n                                              (iVar21,PTR_DAT_0003d02c + -0x3d30,8)" (parenthesized_expression "(*(code *)PTR_write_0003d1b0)" ( (pointer_expression "*(code *)PTR_write_0003d1b0" * (cast_expression "(code *)PTR_write_0003d1b0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar21,PTR_DAT_0003d02c + -0x3d30,8)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x3d30" identifier + number_literal) , number_literal )))) , (binary_expression "iVar21 < 1" identifier < number_literal)) ))) )) && (parenthesized_expression "(piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb\n                         )" ( (comma_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar4 != 0xb" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) , (binary_expression "*piVar4 != 0xb" (pointer_expression "*piVar4" * identifier) != number_literal)) ))) )) (compound_statement "{\n                        unaff_s4 = (MHD_Daemon *)0x1;\n                        MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" { (expression_statement "unaff_s4 = (MHD_Daemon *)0x1;" (assignment_expression "unaff_s4 = (MHD_Daemon *)0x1" identifier = (cast_expression "(MHD_Daemon *)0x1" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c);" (call_expression "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b6c)" identifier (argument_list "(daemon,PTR_DAT_0003d02c + -0x4b6c)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4b6c" identifier + number_literal) ))) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) }))) (labeled_statement "LAB_00019b00:\n                      unaff_s4 = (MHD_Daemon *)0x1;" statement_identifier : (expression_statement "unaff_s4 = (MHD_Daemon *)0x1;" (assignment_expression "unaff_s4 = (MHD_Daemon *)0x1" identifier = (cast_expression "(MHD_Daemon *)0x1" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }) (else_clause "else {\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" else (compound_statement "{\n                    iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);\n                    if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }\n                    MVar13 = daemon->options;\n                    if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" { (expression_statement "iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8);" (assignment_expression "iVar21 = MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8)" identifier = (call_expression "MHD_create_named_thread_\n                                       (&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8)" identifier (argument_list "(&unaff_s8->pid,PTR_DAT_0003d02c + -0x4b9c,\n                                        daemon->thread_stack_size,\n                                        (MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc),\n                                        unaff_s8)" ( (pointer_expression "&unaff_s8->pid" & (field_expression "unaff_s8->pid" identifier -> field_identifier)) , (binary_expression "PTR_DAT_0003d02c + -0x4b9c" identifier + number_literal) , (field_expression "daemon->thread_stack_size" identifier -> field_identifier) , (call_expression "(MHD_THREAD_START_ROUTINE_)(PTR_LAB_0003d054 + -0x56bc)" (parenthesized_expression "(MHD_THREAD_START_ROUTINE_)" ( identifier )) (argument_list "(PTR_LAB_0003d054 + -0x56bc)" ( (binary_expression "PTR_LAB_0003d054 + -0x56bc" identifier + number_literal) ))) , identifier )))) ;) (if_statement "if (iVar21 == 0) {\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }" if (parenthesized_expression "(iVar21 == 0)" ( (binary_expression "iVar21 == 0" identifier == number_literal) )) (compound_statement "{\n                      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar21 = *piVar4;\n                      uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);\n                      MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);\n                      goto LAB_00019374;\n                    }" { (expression_statement "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar21 = *piVar4;" (assignment_expression "iVar21 = *piVar4" identifier = (pointer_expression "*piVar4" * identifier)) ;) (expression_statement "uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);" (assignment_expression "uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar21)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar21)" ( identifier )))) ;) (expression_statement "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17);" (call_expression "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17)" identifier (argument_list "(daemon,PTR_DAT_0003d02c + -0x4b8c,uVar17)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4b8c" identifier + number_literal) , identifier ))) ;) (goto_statement "goto LAB_00019374;" goto statement_identifier ;) })) (expression_statement "MVar13 = daemon->options;" (assignment_expression "MVar13 = daemon->options" identifier = (field_expression "daemon->options" identifier -> field_identifier)) ;) (if_statement "if ((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG) {\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }" if (parenthesized_expression "((MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG)" ( (binary_expression "(MVar13 & MHD_USE_EPOLL) == MHD_NO_FLAG" (parenthesized_expression "(MVar13 & MHD_USE_EPOLL)" ( (binary_expression "MVar13 & MHD_USE_EPOLL" identifier & identifier) )) == identifier) )) (compound_statement "{\n                      if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }" { (if_statement "if ((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)\n                      goto LAB_00019b50;" if (parenthesized_expression "((MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)" ( (binary_expression "(MVar13 & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG" (parenthesized_expression "(MVar13 & MHD_USE_THREAD_PER_CONNECTION)" ( (binary_expression "MVar13 & MHD_USE_THREAD_PER_CONNECTION" identifier & identifier) )) == identifier) )) (goto_statement "goto LAB_00019b50;" goto statement_identifier ;)) (goto_statement "goto LAB_00019b00;" goto statement_identifier ;) })) }))) (if_statement "if (((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)) {\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }" if (parenthesized_expression "(((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add))" ( (binary_expression "((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG) && (!external_add)" (parenthesized_expression "((MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG)" ( (binary_expression "(MVar13 & MHD_USE_EPOLL_TURBO) != MHD_NO_FLAG" (parenthesized_expression "(MVar13 & MHD_USE_EPOLL_TURBO)" ( (binary_expression "MVar13 & MHD_USE_EPOLL_TURBO" identifier & identifier) )) != identifier) )) && (parenthesized_expression "(!external_add)" ( (unary_expression "!external_add" ! identifier) ))) )) (compound_statement "{\n                    pMVar9 = daemon->eready_head;\n                    pMVar14 = daemon->eready_tail;\n                    unaff_s8->prevE = (MHD_Connection *)0x0;\n                    unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);\n                    unaff_s8->nextE = pMVar9;\n                    if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;\n                    pMVar9->prevE = unaff_s8;\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    daemon->eready_head = unaff_s8;\n                    goto LAB_00019220;\n                  }" { (expression_statement "pMVar9 = daemon->eready_head;" (assignment_expression "pMVar9 = daemon->eready_head" identifier = (field_expression "daemon->eready_head" identifier -> field_identifier)) ;) (expression_statement "pMVar14 = daemon->eready_tail;" (assignment_expression "pMVar14 = daemon->eready_tail" identifier = (field_expression "daemon->eready_tail" identifier -> field_identifier)) ;) (expression_statement "unaff_s8->prevE = (MHD_Connection *)0x0;" (assignment_expression "unaff_s8->prevE = (MHD_Connection *)0x0" (field_expression "unaff_s8->prevE" identifier -> field_identifier) = (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY);" (assignment_expression "unaff_s8->epoll_state =\n                         unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY)" (field_expression "unaff_s8->epoll_state" identifier -> field_identifier) = (binary_expression "unaff_s8->epoll_state |\n                         (MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY)" (field_expression "unaff_s8->epoll_state" identifier -> field_identifier) | (parenthesized_expression "(MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY)" ( (binary_expression "MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY|\n                         MHD_EPOLL_STATE_READ_READY" (binary_expression "MHD_EPOLL_STATE_IN_EREADY_EDLL|MHD_EPOLL_STATE_WRITE_READY" identifier | identifier) | identifier) )))) ;) (expression_statement "unaff_s8->nextE = pMVar9;" (assignment_expression "unaff_s8->nextE = pMVar9" (field_expression "unaff_s8->nextE" identifier -> field_identifier) = identifier) ;) (if_statement "if (pMVar14 == (MHD_Connection *)0x0) goto LAB_00019c54;" if (parenthesized_expression "(pMVar14 == (MHD_Connection *)0x0)" ( (binary_expression "pMVar14 == (MHD_Connection *)0x0" identifier == (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00019c54;" goto statement_identifier ;)) (expression_statement "pMVar9->prevE = unaff_s8;" (assignment_expression "pMVar9->prevE = unaff_s8" (field_expression "pMVar9->prevE" identifier -> field_identifier) = identifier) ;) (expression_statement "unaff_s4 = (MHD_Daemon *)0x1;" (assignment_expression "unaff_s4 = (MHD_Daemon *)0x1" identifier = (cast_expression "(MHD_Daemon *)0x1" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "daemon->eready_head = unaff_s8;" (assignment_expression "daemon->eready_head = unaff_s8" (field_expression "daemon->eready_head" identifier -> field_identifier) = identifier) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (expression_statement "event.events = 0x80000007;" (assignment_expression "event.events = 0x80000007" (field_expression "event.events" identifier . field_identifier) = number_literal) ;) (expression_statement "event.data.fd = (int)unaff_s8;" (assignment_expression "event.data.fd = (int)unaff_s8" (field_expression "event.data.fd" (field_expression "event.data" identifier . field_identifier) . field_identifier) = (cast_expression "(int)unaff_s8" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event);" (assignment_expression "iVar21 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event)" identifier = (call_expression "(*(code *)PTR_epoll_ctl_0003d1f8)\n                                     (daemon->epoll_fd,1,client_socket,&event)" (parenthesized_expression "(*(code *)PTR_epoll_ctl_0003d1f8)" ( (pointer_expression "*(code *)PTR_epoll_ctl_0003d1f8" * (cast_expression "(code *)PTR_epoll_ctl_0003d1f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(daemon->epoll_fd,1,client_socket,&event)" ( (field_expression "daemon->epoll_fd" identifier -> field_identifier) , number_literal , identifier , (pointer_expression "&event" & identifier) )))) ;) (if_statement "if (iVar21 == 0) {\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }" if (parenthesized_expression "(iVar21 == 0)" ( (binary_expression "iVar21 == 0" identifier == number_literal) )) (compound_statement "{\n                    unaff_s4 = (MHD_Daemon *)0x1;\n                    unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;\n                    goto LAB_00019220;\n                  }" { (expression_statement "unaff_s4 = (MHD_Daemon *)0x1;" (assignment_expression "unaff_s4 = (MHD_Daemon *)0x1" identifier = (cast_expression "(MHD_Daemon *)0x1" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET;" (assignment_expression "unaff_s8->epoll_state = unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET" (field_expression "unaff_s8->epoll_state" identifier -> field_identifier) = (binary_expression "unaff_s8->epoll_state | MHD_EPOLL_STATE_IN_EPOLL_SET" (field_expression "unaff_s8->epoll_state" identifier -> field_identifier) | identifier)) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (expression_statement "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar21 = *piVar4;" (assignment_expression "iVar21 = *piVar4" identifier = (pointer_expression "*piVar4" * identifier)) ;) (expression_statement "uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21);" (assignment_expression "uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar21)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar21)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar21)" ( identifier )))) ;) (expression_statement "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17);" (call_expression "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17)" identifier (argument_list "(daemon,PTR_DAT_0003d02c + -0x5ea8,uVar17)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x5ea8" identifier + number_literal) , identifier ))) ;) (labeled_statement "LAB_00019374:\n                  if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }" statement_identifier : (if_statement "if (daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0) {\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }" if (parenthesized_expression "(daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0)" ( (binary_expression "daemon->notify_connection != (MHD_NotifyConnectionCallback)0x0" (field_expression "daemon->notify_connection" identifier -> field_identifier) != (cast_expression "(MHD_NotifyConnectionCallback)0x0" ( (type_descriptor "MHD_NotifyConnectionCallback" type_identifier) ) number_literal)) )) (compound_statement "{\n                    (*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);\n                  }" { (expression_statement "(*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED);" (call_expression "(*daemon->notify_connection)\n                              (daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED)" (parenthesized_expression "(*daemon->notify_connection)" ( (pointer_expression "*daemon->notify_connection" * (field_expression "daemon->notify_connection" identifier -> field_identifier)) )) (argument_list "(daemon->notify_connection_cls,unaff_s8,&unaff_s8->socket_context,\n                               MHD_CONNECTION_NOTIFY_CLOSED)" ( (field_expression "daemon->notify_connection_cls" identifier -> field_identifier) , identifier , (pointer_expression "&unaff_s8->socket_context" & (field_expression "unaff_s8->socket_context" identifier -> field_identifier)) , identifier ))) ;) }))) (expression_statement "iVar8 = (*(code *)PTR_close_0003d128)(client_socket);" (assignment_expression "iVar8 = (*(code *)PTR_close_0003d128)(client_socket)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(client_socket)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(client_socket)" ( identifier )))) ;) (if_statement "if (iVar8 != 0) {\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar17 = 0xad2;\n                    if (*piVar4 == 9) goto LAB_000196e8;\n                  }" { (expression_statement "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar17 = 0xad2;" (assignment_expression "uVar17 = 0xad2" identifier = number_literal) ;) (if_statement "if (*piVar4 == 9) goto LAB_000196e8;" if (parenthesized_expression "(*piVar4 == 9)" ( (binary_expression "*piVar4 == 9" (pointer_expression "*piVar4" * identifier) == number_literal) )) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;)) })) (expression_statement "pMVar20 = &daemon->cleanup_connection_mutex;" (assignment_expression "pMVar20 = &daemon->cleanup_connection_mutex" identifier = (pointer_expression "&daemon->cleanup_connection_mutex" & (field_expression "daemon->cleanup_connection_mutex" identifier -> field_identifier))) ;) (expression_statement "MHD_ip_limit_del(daemon,addr,addrlen);" (call_expression "MHD_ip_limit_del(daemon,addr,addrlen)" identifier (argument_list "(daemon,addr,addrlen)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20);" (assignment_expression "iVar8 = (*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(pMVar20)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" ( (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" * (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pMVar20)" ( identifier )))) ;) (expression_statement "addrlen = (socklen_t)pMVar20;" (assignment_expression "addrlen = (socklen_t)pMVar20" identifier = (cast_expression "(socklen_t)pMVar20" ( (type_descriptor "socklen_t" type_identifier) ) identifier)) ;) (if_statement "if (iVar8 != 0) {\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n                    uVar17 = 0xad7;\n                    goto LAB_00019c68;\n                  }" { (expression_statement "uVar17 = 0xad7;" (assignment_expression "uVar17 = 0xad7" identifier = number_literal) ;) (goto_statement "goto LAB_00019c68;" goto statement_identifier ;) })) (if_statement "if ((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG) {\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }" if (parenthesized_expression "((daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG)" ( (binary_expression "(daemon->options & MHD_USE_THREAD_PER_CONNECTION) == MHD_NO_FLAG" (parenthesized_expression "(daemon->options & MHD_USE_THREAD_PER_CONNECTION)" ( (binary_expression "daemon->options & MHD_USE_THREAD_PER_CONNECTION" (field_expression "daemon->options" identifier -> field_identifier) & identifier) )) == identifier) )) (compound_statement "{\n                    pMVar9 = unaff_s8->nextX;\n                    if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }\n                    if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }\n                    unaff_s8->nextX = (MHD_Connection *)0x0;\n                    unaff_s8->prevX = (MHD_Connection *)0x0;\n                  }" { (expression_statement "pMVar9 = unaff_s8->nextX;" (assignment_expression "pMVar9 = unaff_s8->nextX" identifier = (field_expression "unaff_s8->nextX" identifier -> field_identifier)) ;) (if_statement "if (unaff_s8->prevX == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }\n                    else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }" if (parenthesized_expression "(unaff_s8->prevX == (MHD_Connection *)0x0)" ( (binary_expression "unaff_s8->prevX == (MHD_Connection *)0x0" (field_expression "unaff_s8->prevX" identifier -> field_identifier) == (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      daemon->normal_timeout_head = pMVar9;\n                      pMVar14 = (MHD_Connection *)0x0;\n                    }" { (expression_statement "daemon->normal_timeout_head = pMVar9;" (assignment_expression "daemon->normal_timeout_head = pMVar9" (field_expression "daemon->normal_timeout_head" identifier -> field_identifier) = identifier) ;) (expression_statement "pMVar14 = (MHD_Connection *)0x0;" (assignment_expression "pMVar14 = (MHD_Connection *)0x0" identifier = (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }" else (compound_statement "{\n                      unaff_s8->prevX->nextX = pMVar9;\n                      pMVar9 = unaff_s8->nextX;\n                      pMVar14 = unaff_s8->prevX;\n                    }" { (expression_statement "unaff_s8->prevX->nextX = pMVar9;" (assignment_expression "unaff_s8->prevX->nextX = pMVar9" (field_expression "unaff_s8->prevX->nextX" (field_expression "unaff_s8->prevX" identifier -> field_identifier) -> field_identifier) = identifier) ;) (expression_statement "pMVar9 = unaff_s8->nextX;" (assignment_expression "pMVar9 = unaff_s8->nextX" identifier = (field_expression "unaff_s8->nextX" identifier -> field_identifier)) ;) (expression_statement "pMVar14 = unaff_s8->prevX;" (assignment_expression "pMVar14 = unaff_s8->prevX" identifier = (field_expression "unaff_s8->prevX" identifier -> field_identifier)) ;) }))) (if_statement "if (pMVar9 == (MHD_Connection *)0x0) {\n                      daemon->normal_timeout_tail = pMVar14;\n                    }\n                    else {\n                      pMVar9->prevX = pMVar14;\n                    }" if (parenthesized_expression "(pMVar9 == (MHD_Connection *)0x0)" ( (binary_expression "pMVar9 == (MHD_Connection *)0x0" identifier == (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                      daemon->normal_timeout_tail = pMVar14;\n                    }" { (expression_statement "daemon->normal_timeout_tail = pMVar14;" (assignment_expression "daemon->normal_timeout_tail = pMVar14" (field_expression "daemon->normal_timeout_tail" identifier -> field_identifier) = identifier) ;) }) (else_clause "else {\n                      pMVar9->prevX = pMVar14;\n                    }" else (compound_statement "{\n                      pMVar9->prevX = pMVar14;\n                    }" { (expression_statement "pMVar9->prevX = pMVar14;" (assignment_expression "pMVar9->prevX = pMVar14" (field_expression "pMVar9->prevX" identifier -> field_identifier) = identifier) ;) }))) (expression_statement "unaff_s8->nextX = (MHD_Connection *)0x0;" (assignment_expression "unaff_s8->nextX = (MHD_Connection *)0x0" (field_expression "unaff_s8->nextX" identifier -> field_identifier) = (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s8->prevX = (MHD_Connection *)0x0;" (assignment_expression "unaff_s8->prevX = (MHD_Connection *)0x0" (field_expression "unaff_s8->prevX" identifier -> field_identifier) = (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) (expression_statement "pMVar9 = unaff_s8->next;" (assignment_expression "pMVar9 = unaff_s8->next" identifier = (field_expression "unaff_s8->next" identifier -> field_identifier)) ;) (if_statement "if (unaff_s8->prev == (MHD_Connection *)0x0) {\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }\n                  else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }" if (parenthesized_expression "(unaff_s8->prev == (MHD_Connection *)0x0)" ( (binary_expression "unaff_s8->prev == (MHD_Connection *)0x0" (field_expression "unaff_s8->prev" identifier -> field_identifier) == (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    daemon->connections_head = pMVar9;\n                    pMVar14 = (MHD_Connection *)0x0;\n                  }" { (expression_statement "daemon->connections_head = pMVar9;" (assignment_expression "daemon->connections_head = pMVar9" (field_expression "daemon->connections_head" identifier -> field_identifier) = identifier) ;) (expression_statement "pMVar14 = (MHD_Connection *)0x0;" (assignment_expression "pMVar14 = (MHD_Connection *)0x0" identifier = (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }" else (compound_statement "{\n                    unaff_s8->prev->next = pMVar9;\n                    pMVar9 = unaff_s8->next;\n                    pMVar14 = unaff_s8->prev;\n                  }" { (expression_statement "unaff_s8->prev->next = pMVar9;" (assignment_expression "unaff_s8->prev->next = pMVar9" (field_expression "unaff_s8->prev->next" (field_expression "unaff_s8->prev" identifier -> field_identifier) -> field_identifier) = identifier) ;) (expression_statement "pMVar9 = unaff_s8->next;" (assignment_expression "pMVar9 = unaff_s8->next" identifier = (field_expression "unaff_s8->next" identifier -> field_identifier)) ;) (expression_statement "pMVar14 = unaff_s8->prev;" (assignment_expression "pMVar14 = unaff_s8->prev" identifier = (field_expression "unaff_s8->prev" identifier -> field_identifier)) ;) }))) (if_statement "if (pMVar9 == (MHD_Connection *)0x0) {\n                    daemon->connections_tail = pMVar14;\n                  }\n                  else {\n                    pMVar9->prev = pMVar14;\n                  }" if (parenthesized_expression "(pMVar9 == (MHD_Connection *)0x0)" ( (binary_expression "pMVar9 == (MHD_Connection *)0x0" identifier == (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    daemon->connections_tail = pMVar14;\n                  }" { (expression_statement "daemon->connections_tail = pMVar14;" (assignment_expression "daemon->connections_tail = pMVar14" (field_expression "daemon->connections_tail" identifier -> field_identifier) = identifier) ;) }) (else_clause "else {\n                    pMVar9->prev = pMVar14;\n                  }" else (compound_statement "{\n                    pMVar9->prev = pMVar14;\n                  }" { (expression_statement "pMVar9->prev = pMVar14;" (assignment_expression "pMVar9->prev = pMVar14" (field_expression "pMVar9->prev" identifier -> field_identifier) = identifier) ;) }))) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" identifier = identifier) ;) (expression_statement "unaff_s8->next = (MHD_Connection *)0x0;" (assignment_expression "unaff_s8->next = (MHD_Connection *)0x0" (field_expression "unaff_s8->next" identifier -> field_identifier) = (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "unaff_s8->prev = (MHD_Connection *)0x0;" (assignment_expression "unaff_s8->prev = (MHD_Connection *)0x0" (field_expression "unaff_s8->prev" identifier -> field_identifier) = (cast_expression "(MHD_Connection *)0x0" ( (type_descriptor "MHD_Connection *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar8 = (*(code *)puVar1)(pMVar20);" (assignment_expression "iVar8 = (*(code *)puVar1)(pMVar20)" identifier = (call_expression "(*(code *)puVar1)(pMVar20)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pMVar20)" ( identifier )))) ;) (if_statement "if (iVar8 == 0) {\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    MHD_pool_destroy(unaff_s8->pool);\n                    (*(code *)PTR_free_0003d250)(unaff_s8->addr);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }" { (expression_statement "MHD_pool_destroy(unaff_s8->pool);" (call_expression "MHD_pool_destroy(unaff_s8->pool)" identifier (argument_list "(unaff_s8->pool)" ( (field_expression "unaff_s8->pool" identifier -> field_identifier) ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8->addr);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8->addr)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8->addr)" ( (field_expression "unaff_s8->addr" identifier -> field_identifier) ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (if_statement "if (iVar21 != 0) {\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }" if (parenthesized_expression "(iVar21 != 0)" ( (binary_expression "iVar21 != 0" identifier != number_literal) )) (compound_statement "{\n                      *piVar4 = iVar21;\n                      unaff_s4 = (MHD_Daemon *)0x0;\n                      goto LAB_00019220;\n                    }" { (expression_statement "*piVar4 = iVar21;" (assignment_expression "*piVar4 = iVar21" (pointer_expression "*piVar4" * identifier) = identifier) ;) (expression_statement "unaff_s4 = (MHD_Daemon *)0x0;" (assignment_expression "unaff_s4 = (MHD_Daemon *)0x0" identifier = (cast_expression "(MHD_Daemon *)0x0" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (goto_statement "goto LAB_000195a8;" goto statement_identifier ;) })) (goto_statement "goto LAB_00019c8c;" goto statement_identifier ;) })) }) (else_clause "else {\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" else (compound_statement "{\n                iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);\n                uVar17 = 0xa63;\n                if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" { (expression_statement "iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);" (assignment_expression "iVar21 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)(pMVar20)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" ( (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" * (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(pMVar20)" ( identifier )))) ;) (expression_statement "uVar17 = 0xa63;" (assignment_expression "uVar17 = 0xa63" identifier = number_literal) ;) (if_statement "if (iVar21 == 0) {\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }" if (parenthesized_expression "(iVar21 == 0)" ( (binary_expression "iVar21 == 0" identifier == number_literal) )) (compound_statement "{\n                  iVar21 = 0x17;\n                  MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }" { (expression_statement "iVar21 = 0x17;" (assignment_expression "iVar21 = 0x17" identifier = number_literal) ;) (expression_statement "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63);" (call_expression "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63)" identifier (argument_list "(daemon,PTR_DAT_0003d02c + -0x4bfc,0xa63)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bfc" identifier + number_literal) , number_literal ))) ;) (goto_statement "goto LAB_00019374;" goto statement_identifier ;) })) }))) }) (else_clause "else {\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }" else (compound_statement "{\nLAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar17 = 0xae3;\n            }" { (labeled_statement "LAB_00019c68:\n              (**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);" statement_identifier : (expression_statement "(**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0);" (call_expression "(**(code **)PTR_mhd_panic_0003d03c)\n                        (*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0)" (parenthesized_expression "(**(code **)PTR_mhd_panic_0003d03c)" ( (pointer_expression "**(code **)PTR_mhd_panic_0003d03c" * (pointer_expression "*(code **)PTR_mhd_panic_0003d03c" * (cast_expression "(code **)PTR_mhd_panic_0003d03c" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (argument_list "(*(undefined4 *)PTR_mhd_panic_cls_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar17\n                         ,PTR_DAT_0003d02c + -0x62c0)" ( (pointer_expression "*(undefined4 *)PTR_mhd_panic_cls_0003d038" * (cast_expression "(undefined4 *)PTR_mhd_panic_cls_0003d038" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_DAT_0003d02c + -0x51b0" identifier + number_literal) , identifier , (binary_expression "PTR_DAT_0003d02c + -0x62c0" identifier + number_literal) ))) ;)) (labeled_statement "LAB_00019c8c:\n              uVar17 = 0xae3;" statement_identifier : (expression_statement "uVar17 = 0xae3;" (assignment_expression "uVar17 = 0xae3" identifier = number_literal) ;)) }))) (expression_statement "pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298);" (assignment_expression "pMVar12 = (MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298)" identifier = (cast_expression "(MHD_Daemon *)\n                      (**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298)" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)PTR_mhd_panic_0003d03c)\n                                (*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298)" (parenthesized_expression "(**(code **)PTR_mhd_panic_0003d03c)" ( (pointer_expression "**(code **)PTR_mhd_panic_0003d03c" * (pointer_expression "*(code **)PTR_mhd_panic_0003d03c" * (cast_expression "(code **)PTR_mhd_panic_0003d03c" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (argument_list "(*(undefined4 *)PTR_mhd_panic_cls_0003d038,\n                                 PTR_DAT_0003d02c + -0x51b0,uVar17,PTR_DAT_0003d02c + -0x6298)" ( (pointer_expression "*(undefined4 *)PTR_mhd_panic_cls_0003d038" * (cast_expression "(undefined4 *)PTR_mhd_panic_cls_0003d038" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_DAT_0003d02c + -0x51b0" identifier + number_literal) , identifier , (binary_expression "PTR_DAT_0003d02c + -0x6298" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00019cb4;" goto statement_identifier ;) })) (expression_statement "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar8 = *piVar4;" (assignment_expression "iVar8 = *piVar4" identifier = (pointer_expression "*piVar4" * identifier)) ;) (expression_statement "uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8);" (assignment_expression "uVar17 = (*(code *)PTR_strerror_0003d1dc)(iVar8)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar8)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar8)" ( identifier )))) ;) (expression_statement "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17);" (call_expression "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17)" identifier (argument_list "(daemon,PTR_DAT_0003d02c + -0x4bbc,uVar17)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bbc" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar21 = (*(code *)PTR_close_0003d128)(client_socket);" (assignment_expression "iVar21 = (*(code *)PTR_close_0003d128)(client_socket)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(client_socket)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(client_socket)" ( identifier )))) ;) (if_statement "if ((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }" if (parenthesized_expression "((iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9))" ( (binary_expression "(iVar21 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)" (parenthesized_expression "(iVar21 == 0)" ( (binary_expression "iVar21 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar17 = 0x9ee, *piVar4 != 9)" ( (comma_expression "uVar17 = 0x9ee, *piVar4 != 9" (assignment_expression "uVar17 = 0x9ee" identifier = number_literal) , (binary_expression "*piVar4 != 9" (pointer_expression "*piVar4" * identifier) != number_literal)) ))) )) (compound_statement "{\n            unaff_s4 = (MHD_Daemon *)0x0;\n            MHD_ip_limit_del(daemon,addr,addrlen);\n            MHD_pool_destroy(unaff_s8->pool);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar4 = iVar8;\n            goto LAB_00019220;\n          }" { (expression_statement "unaff_s4 = (MHD_Daemon *)0x0;" (assignment_expression "unaff_s4 = (MHD_Daemon *)0x0" identifier = (cast_expression "(MHD_Daemon *)0x0" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "MHD_ip_limit_del(daemon,addr,addrlen);" (call_expression "MHD_ip_limit_del(daemon,addr,addrlen)" identifier (argument_list "(daemon,addr,addrlen)" ( identifier , identifier , identifier ))) ;) (expression_statement "MHD_pool_destroy(unaff_s8->pool);" (call_expression "MHD_pool_destroy(unaff_s8->pool)" identifier (argument_list "(unaff_s8->pool)" ( (field_expression "unaff_s8->pool" identifier -> field_identifier) ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "*piVar4 = iVar8;" (assignment_expression "*piVar4 = iVar8" (pointer_expression "*piVar4" * identifier) = identifier) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }))) }))) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;) }))) (labeled_statement "LAB_000196b4:\n    iVar21 = (*(code *)PTR_close_0003d128)(client_socket);" statement_identifier : (expression_statement "iVar21 = (*(code *)PTR_close_0003d128)(client_socket);" (assignment_expression "iVar21 = (*(code *)PTR_close_0003d128)(client_socket)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(client_socket)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(client_socket)" ( identifier )))) ;)) (if_statement "if (iVar21 != 0) {\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar17 = 0x9b8;\n      puVar22 = &_gp;\n      if (*piVar4 == 9) goto LAB_000196e8;\n    }" if (parenthesized_expression "(iVar21 != 0)" ( (binary_expression "iVar21 != 0" identifier != number_literal) )) (compound_statement "{\n      piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar17 = 0x9b8;\n      puVar22 = &_gp;\n      if (*piVar4 == 9) goto LAB_000196e8;\n    }" { (expression_statement "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar17 = 0x9b8;" (assignment_expression "uVar17 = 0x9b8" identifier = number_literal) ;) (expression_statement "puVar22 = &_gp;" (assignment_expression "puVar22 = &_gp" identifier = (pointer_expression "&_gp" & identifier)) ;) (if_statement "if (*piVar4 == 9) goto LAB_000196e8;" if (parenthesized_expression "(*piVar4 == 9)" ( (binary_expression "*piVar4 == 9" (pointer_expression "*piVar4" * identifier) == number_literal) )) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;)) })) }) (else_clause "else {\n    MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4c5c,client_socket,0x400);\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar22 = &_gp;\n    if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) || (*piVar4 != 9)) {\nLAB_000195a8:\n      unaff_s4 = (MHD_Daemon *)0x0;\n      *piVar4 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar17 = 0x979;\nLAB_000196e8:\n    puVar11 = *(undefined4 **)(puVar22 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar22 + -0x7fc4))\n              (*puVar11,*(int *)(puVar22 + -0x7fd4) + -0x51b0,uVar17,\n               *(int *)(puVar22 + -0x7fd4) + -0x4cfc);\n  }" else (compound_statement "{\n    MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4c5c,client_socket,0x400);\n    addrlen = (*(code *)PTR_close_0003d128)(client_socket);\n    piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar22 = &_gp;\n    if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) || (*piVar4 != 9)) {\nLAB_000195a8:\n      unaff_s4 = (MHD_Daemon *)0x0;\n      *piVar4 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar17 = 0x979;\nLAB_000196e8:\n    puVar11 = *(undefined4 **)(puVar22 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar22 + -0x7fc4))\n              (*puVar11,*(int *)(puVar22 + -0x7fd4) + -0x51b0,uVar17,\n               *(int *)(puVar22 + -0x7fd4) + -0x4cfc);\n  }" { (expression_statement "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4c5c,client_socket,0x400);" (call_expression "MHD_DLOG(daemon,PTR_DAT_0003d02c + -0x4c5c,client_socket,0x400)" identifier (argument_list "(daemon,PTR_DAT_0003d02c + -0x4c5c,client_socket,0x400)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4c5c" identifier + number_literal) , identifier , number_literal ))) ;) (expression_statement "addrlen = (*(code *)PTR_close_0003d128)(client_socket);" (assignment_expression "addrlen = (*(code *)PTR_close_0003d128)(client_socket)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(client_socket)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(client_socket)" ( identifier )))) ;) (expression_statement "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar4 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "puVar22 = &_gp;" (assignment_expression "puVar22 = &_gp" identifier = (pointer_expression "&_gp" & identifier)) ;) (if_statement "if (((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) || (*piVar4 != 9)) {\nLAB_000195a8:\n      unaff_s4 = (MHD_Daemon *)0x0;\n      *piVar4 = 0x16;\n      goto LAB_00019220;\n    }" if (parenthesized_expression "(((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) || (*piVar4 != 9))" ( (binary_expression "((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0) || (*piVar4 != 9)" (parenthesized_expression "((MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0)" ( (binary_expression "(MHD_mutex_ *)addrlen == (MHD_mutex_ *)0x0" (cast_expression "(MHD_mutex_ *)addrlen" ( (type_descriptor "MHD_mutex_ *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) == (cast_expression "(MHD_mutex_ *)0x0" ( (type_descriptor "MHD_mutex_ *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(*piVar4 != 9)" ( (binary_expression "*piVar4 != 9" (pointer_expression "*piVar4" * identifier) != number_literal) ))) )) (compound_statement "{\nLAB_000195a8:\n      unaff_s4 = (MHD_Daemon *)0x0;\n      *piVar4 = 0x16;\n      goto LAB_00019220;\n    }" { (labeled_statement "LAB_000195a8:\n      unaff_s4 = (MHD_Daemon *)0x0;" statement_identifier : (expression_statement "unaff_s4 = (MHD_Daemon *)0x0;" (assignment_expression "unaff_s4 = (MHD_Daemon *)0x0" identifier = (cast_expression "(MHD_Daemon *)0x0" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "*piVar4 = 0x16;" (assignment_expression "*piVar4 = 0x16" (pointer_expression "*piVar4" * identifier) = number_literal) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (labeled_statement "LAB_00019cc4:\n    uVar17 = 0x979;" statement_identifier : (expression_statement "uVar17 = 0x979;" (assignment_expression "uVar17 = 0x979" identifier = number_literal) ;)) (labeled_statement "LAB_000196e8:\n    puVar11 = *(undefined4 **)(puVar22 + -0x7fc8);" statement_identifier : (expression_statement "puVar11 = *(undefined4 **)(puVar22 + -0x7fc8);" (assignment_expression "puVar11 = *(undefined4 **)(puVar22 + -0x7fc8)" identifier = (pointer_expression "*(undefined4 **)(puVar22 + -0x7fc8)" * (cast_expression "(undefined4 **)(puVar22 + -0x7fc8)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + -0x7fc8)" ( (binary_expression "puVar22 + -0x7fc8" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar22 + -0x7fc4))\n              (*puVar11,*(int *)(puVar22 + -0x7fd4) + -0x51b0,uVar17,\n               *(int *)(puVar22 + -0x7fd4) + -0x4cfc);" statement_identifier : (expression_statement "(*(code *)**(undefined4 **)(puVar22 + -0x7fc4))\n              (*puVar11,*(int *)(puVar22 + -0x7fd4) + -0x51b0,uVar17,\n               *(int *)(puVar22 + -0x7fd4) + -0x4cfc);" (call_expression "(*(code *)**(undefined4 **)(puVar22 + -0x7fc4))\n              (*puVar11,*(int *)(puVar22 + -0x7fd4) + -0x51b0,uVar17,\n               *(int *)(puVar22 + -0x7fd4) + -0x4cfc)" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar22 + -0x7fc4))" ( (pointer_expression "*(code *)**(undefined4 **)(puVar22 + -0x7fc4)" * (cast_expression "(code *)**(undefined4 **)(puVar22 + -0x7fc4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar22 + -0x7fc4)" * (pointer_expression "*(undefined4 **)(puVar22 + -0x7fc4)" * (cast_expression "(undefined4 **)(puVar22 + -0x7fc4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar22 + -0x7fc4)" ( (binary_expression "puVar22 + -0x7fc4" identifier + number_literal) ))))))) )) (argument_list "(*puVar11,*(int *)(puVar22 + -0x7fd4) + -0x51b0,uVar17,\n               *(int *)(puVar22 + -0x7fd4) + -0x4cfc)" ( (pointer_expression "*puVar11" * identifier) , (binary_expression "*(int *)(puVar22 + -0x7fd4) + -0x51b0" (pointer_expression "*(int *)(puVar22 + -0x7fd4)" * (cast_expression "(int *)(puVar22 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + -0x7fd4)" ( (binary_expression "puVar22 + -0x7fd4" identifier + number_literal) )))) + number_literal) , identifier , (binary_expression "*(int *)(puVar22 + -0x7fd4) + -0x4cfc" (pointer_expression "*(int *)(puVar22 + -0x7fd4)" * (cast_expression "(int *)(puVar22 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar22 + -0x7fd4)" ( (binary_expression "puVar22 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))) ;)) }))) (expression_statement "MHD_ip_limit_del(daemon,addr,addrlen);" (call_expression "MHD_ip_limit_del(daemon,addr,addrlen)" identifier (argument_list "(daemon,addr,addrlen)" ( identifier , identifier , identifier ))) ;) (labeled_statement "LAB_00019220:\n  while (iVar2 != *piVar19) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    daemon->eready_tail = unaff_s8;\n    unaff_s4 = (MHD_Daemon *)0x1;\n    daemon->eready_head = unaff_s8;\n  }" statement_identifier : (while_statement "while (iVar2 != *piVar19) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    daemon->eready_tail = unaff_s8;\n    unaff_s4 = (MHD_Daemon *)0x1;\n    daemon->eready_head = unaff_s8;\n  }" while (parenthesized_expression "(iVar2 != *piVar19)" ( (binary_expression "iVar2 != *piVar19" identifier != (pointer_expression "*piVar19" * identifier)) )) (compound_statement "{\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    daemon->eready_tail = unaff_s8;\n    unaff_s4 = (MHD_Daemon *)0x1;\n    daemon->eready_head = unaff_s8;\n  }" { (expression_statement "(*(code *)PTR___stack_chk_fail_0003d21c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0003d21c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0003d21c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0003d21c" * (cast_expression "(code *)PTR___stack_chk_fail_0003d21c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_00019c54:\n    daemon->eready_tail = unaff_s8;" statement_identifier : (expression_statement "daemon->eready_tail = unaff_s8;" (assignment_expression "daemon->eready_tail = unaff_s8" (field_expression "daemon->eready_tail" identifier -> field_identifier) = identifier) ;)) (expression_statement "unaff_s4 = (MHD_Daemon *)0x1;" (assignment_expression "unaff_s4 = (MHD_Daemon *)0x1" identifier = (cast_expression "(MHD_Daemon *)0x1" ( (type_descriptor "MHD_Daemon *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "daemon->eready_head = unaff_s8;" (assignment_expression "daemon->eready_head = unaff_s8" (field_expression "daemon->eready_head" identifier -> field_identifier) = identifier) ;) }))) (return_statement "return (MHD_Result)unaff_s4;" return (cast_expression "(MHD_Result)unaff_s4" ( (type_descriptor "MHD_Result" type_identifier) ) identifier) ;) })))
(translation_unit "int FUN_000190fc(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,\n                undefined1 param_6)\n\n{\n  undefined *puVar1;\n  uint uVar2;\n  int *piVar3;\n  undefined4 *puVar4;\n  int iVar5;\n  int iVar6;\n  uint uVar7;\n  undefined4 uVar8;\n  int iVar9;\n  int *piVar10;\n  int iVar11;\n  int unaff_s4;\n  int *unaff_s8;\n  undefined1 *puVar12;\n  undefined4 local_40 [2];\n  int *local_38;\n  int local_2c;\n  \n  piVar10 = (int *)PTR___stack_chk_guard_0003d244;\n  puVar12 = &_gp_1;\n  local_2c = *(int *)PTR___stack_chk_guard_0003d244;\n  if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }\n  if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }\n  FUN_0001871c(param_1,param_3,param_4);\nLAB_00019220:\n  while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }\n  return unaff_s4;\n}\n\n" (function_definition "int FUN_000190fc(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,\n                undefined1 param_6)\n\n{\n  undefined *puVar1;\n  uint uVar2;\n  int *piVar3;\n  undefined4 *puVar4;\n  int iVar5;\n  int iVar6;\n  uint uVar7;\n  undefined4 uVar8;\n  int iVar9;\n  int *piVar10;\n  int iVar11;\n  int unaff_s4;\n  int *unaff_s8;\n  undefined1 *puVar12;\n  undefined4 local_40 [2];\n  int *local_38;\n  int local_2c;\n  \n  piVar10 = (int *)PTR___stack_chk_guard_0003d244;\n  puVar12 = &_gp_1;\n  local_2c = *(int *)PTR___stack_chk_guard_0003d244;\n  if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }\n  if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }\n  FUN_0001871c(param_1,param_3,param_4);\nLAB_00019220:\n  while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }\n  return unaff_s4;\n}" primitive_type (function_declarator "FUN_000190fc(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,\n                undefined1 param_6)" identifier (parameter_list "(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,\n                undefined1 param_6)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "uint param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "int param_4" primitive_type identifier) , (parameter_declaration "char param_5" primitive_type identifier) , (parameter_declaration "undefined1 param_6" type_identifier identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  uint uVar2;\n  int *piVar3;\n  undefined4 *puVar4;\n  int iVar5;\n  int iVar6;\n  uint uVar7;\n  undefined4 uVar8;\n  int iVar9;\n  int *piVar10;\n  int iVar11;\n  int unaff_s4;\n  int *unaff_s8;\n  undefined1 *puVar12;\n  undefined4 local_40 [2];\n  int *local_38;\n  int local_2c;\n  \n  piVar10 = (int *)PTR___stack_chk_guard_0003d244;\n  puVar12 = &_gp_1;\n  local_2c = *(int *)PTR___stack_chk_guard_0003d244;\n  if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }\n  if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }\n  FUN_0001871c(param_1,param_3,param_4);\nLAB_00019220:\n  while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }\n  return unaff_s4;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "int *piVar3;" primitive_type (pointer_declarator "*piVar3" * identifier) ;) (declaration "undefined4 *puVar4;" type_identifier (pointer_declarator "*puVar4" * identifier) ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "undefined4 uVar8;" type_identifier identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "int *piVar10;" primitive_type (pointer_declarator "*piVar10" * identifier) ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "int unaff_s4;" primitive_type identifier ;) (declaration "int *unaff_s8;" primitive_type (pointer_declarator "*unaff_s8" * identifier) ;) (declaration "undefined1 *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "undefined4 local_40 [2];" type_identifier (array_declarator "local_40 [2]" identifier [ number_literal ]) ;) (declaration "int *local_38;" primitive_type (pointer_declarator "*local_38" * identifier) ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "piVar10 = (int *)PTR___stack_chk_guard_0003d244;" (assignment_expression "piVar10 = (int *)PTR___stack_chk_guard_0003d244" identifier = (cast_expression "(int *)PTR___stack_chk_guard_0003d244" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_0003d244;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_0003d244" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_0003d244" * (cast_expression "(int *)PTR___stack_chk_guard_0003d244" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }" if (parenthesized_expression "((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0))" ( (binary_expression "(param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)" (parenthesized_expression "(param_5 != '\0')" ( (binary_expression "param_5 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)" ( (comma_expression "iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0" (assignment_expression "iVar9 = *(int *)(param_1 + 0x74)" identifier = (pointer_expression "*(int *)(param_1 + 0x74)" * (cast_expression "(int *)(param_1 + 0x74)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x74)" ( (binary_expression "param_1 + 0x74" identifier + number_literal) ))))) , (binary_expression "iVar9 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }" { (expression_statement "uVar7 = *(uint *)(param_1 + 0x88);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0x88)" identifier = (pointer_expression "*(uint *)(param_1 + 0x88)" * (cast_expression "(uint *)(param_1 + 0x88)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) ))))) ;) (if_statement "if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }" if (parenthesized_expression "(uVar7 != 0)" ( (binary_expression "uVar7 != 0" identifier != number_literal) )) (compound_statement "{\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }" { (if_statement "if (uVar7 == 0) {\n        trap(7);\n      }" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (compound_statement "{\n        trap(7);\n      }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "iVar6 = (param_2 % uVar7) * 0x130 + iVar9;" (assignment_expression "iVar6 = (param_2 % uVar7) * 0x130 + iVar9" identifier = (binary_expression "(param_2 % uVar7) * 0x130 + iVar9" (binary_expression "(param_2 % uVar7) * 0x130" (parenthesized_expression "(param_2 % uVar7)" ( (binary_expression "param_2 % uVar7" identifier % identifier) )) * number_literal) + identifier)) ;) (expression_statement "uVar2 = param_2 + 1;" (assignment_expression "uVar2 = param_2 + 1" identifier = (binary_expression "param_2 + 1" identifier + number_literal)) ;) (if_statement "if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }" if (parenthesized_expression "(*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4))" ( (binary_expression "*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)" (pointer_expression "*(uint *)(iVar6 + 0xe8)" * (cast_expression "(uint *)(iVar6 + 0xe8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xe8)" ( (binary_expression "iVar6 + 0xe8" identifier + number_literal) )))) <= (pointer_expression "*(uint *)(iVar6 + 0xe4)" * (cast_expression "(uint *)(iVar6 + 0xe4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xe4)" ( (binary_expression "iVar6 + 0xe4" identifier + number_literal) ))))) )) (compound_statement "{\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }" { (do_statement "do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));" do (compound_statement "{\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        }" { (if_statement "if (param_2 + uVar7 == uVar2) goto LAB_000191e0;" if (parenthesized_expression "(param_2 + uVar7 == uVar2)" ( (binary_expression "param_2 + uVar7 == uVar2" (binary_expression "param_2 + uVar7" identifier + identifier) == identifier) )) (goto_statement "goto LAB_000191e0;" goto statement_identifier ;)) (if_statement "if (uVar7 == 0) {\n            trap(7);\n          }" if (parenthesized_expression "(uVar7 == 0)" ( (binary_expression "uVar7 == 0" identifier == number_literal) )) (compound_statement "{\n            trap(7);\n          }" { (expression_statement "trap(7);" (call_expression "trap(7)" identifier (argument_list "(7)" ( number_literal ))) ;) })) (expression_statement "iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;" (assignment_expression "iVar6 = (uVar2 % uVar7) * 0x130 + iVar9" identifier = (binary_expression "(uVar2 % uVar7) * 0x130 + iVar9" (binary_expression "(uVar2 % uVar7) * 0x130" (parenthesized_expression "(uVar2 % uVar7)" ( (binary_expression "uVar2 % uVar7" identifier % identifier) )) * number_literal) + identifier)) ;) (expression_statement "uVar2 = uVar2 + 1;" (assignment_expression "uVar2 = uVar2 + 1" identifier = (binary_expression "uVar2 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4))" ( (binary_expression "*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)" (pointer_expression "*(uint *)(iVar6 + 0xe8)" * (cast_expression "(uint *)(iVar6 + 0xe8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xe8)" ( (binary_expression "iVar6 + 0xe8" identifier + number_literal) )))) <= (pointer_expression "*(uint *)(iVar6 + 0xe4)" * (cast_expression "(uint *)(iVar6 + 0xe4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xe4)" ( (binary_expression "iVar6 + 0xe4" identifier + number_literal) ))))) )) ;) })) (expression_statement "unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);" (assignment_expression "unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6)" identifier = (call_expression "FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6)" identifier (argument_list "(iVar6,param_2,param_3,param_4,1,param_6)" ( identifier , identifier , identifier , identifier , number_literal , identifier )))) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (labeled_statement "LAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);" statement_identifier : (expression_statement "param_4 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "param_4 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;)) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (if_statement "if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;" if (parenthesized_expression "((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9))" ( (binary_expression "(param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)" (parenthesized_expression "(param_4 != 0)" ( (binary_expression "param_4 != 0" identifier != number_literal) )) && (parenthesized_expression "(uVar8 = 0x967, *piVar3 == 9)" ( (comma_expression "uVar8 = 0x967, *piVar3 == 9" (assignment_expression "uVar8 = 0x967" identifier = number_literal) , (binary_expression "*piVar3 == 9" (pointer_expression "*piVar3" * identifier) == number_literal)) ))) )) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;)) (labeled_statement "LAB_00019214:\n    unaff_s4 = 0;" statement_identifier : (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;)) (expression_statement "*piVar3 = 0x17;" (assignment_expression "*piVar3 = 0x17" (pointer_expression "*piVar3" * identifier) = number_literal) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (if_statement "if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }" if (parenthesized_expression "(((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0))" ( (binary_expression "((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)" (parenthesized_expression "((int)param_2 < 0x400)" ( (binary_expression "(int)param_2 < 0x400" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) || (parenthesized_expression "((*(uint *)(param_1 + 0xf4) & 0x240) != 0)" ( (binary_expression "(*(uint *)(param_1 + 0xf4) & 0x240) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0xf4) & 0x240)" ( (binary_expression "*(uint *)(param_1 + 0xf4) & 0x240" (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }" { (expression_statement "unaff_s4 = param_1;" (assignment_expression "unaff_s4 = param_1" identifier = identifier) ;) (if_statement "if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8))" ( (binary_expression "*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)" (pointer_expression "*(int *)(param_1 + 0xe4)" * (cast_expression "(int *)(param_1 + 0xe4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe4)" ( (binary_expression "param_1 + 0xe4" identifier + number_literal) )))) == (pointer_expression "*(int *)(param_1 + 0xe8)" * (cast_expression "(int *)(param_1 + 0xe8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe8)" ( (binary_expression "param_1 + 0xe8" identifier + number_literal) ))))) )) (compound_statement "{\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }" { (labeled_statement "LAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);" statement_identifier : (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bfc)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bfc" identifier + number_literal) ))) ;)) (expression_statement "param_4 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "param_4 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (if_statement "if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;" if (parenthesized_expression "((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))" ( (binary_expression "(param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9)" (parenthesized_expression "(param_4 == 0)" ( (binary_expression "param_4 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9)" ( (comma_expression "uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9" (assignment_expression "uVar8 = 0x9a5" identifier = number_literal) , (comma_expression "puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9" (assignment_expression "puVar4 = (undefined4 *)PTR_DAT_0003d038" identifier = (cast_expression "(undefined4 *)PTR_DAT_0003d038" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" * identifier) != number_literal))) ))) )) (goto_statement "goto LAB_00019214;" goto statement_identifier ;)) (goto_statement "goto LAB_000196ec;" goto statement_identifier ;) })) (expression_statement "iVar9 = *(int *)(param_1 + 0x70);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x70)" identifier = (pointer_expression "*(int *)(param_1 + 0x70)" * (cast_expression "(int *)(param_1 + 0x70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x70)" ( (binary_expression "param_1 + 0x70" identifier + number_literal) ))))) ;) (while_statement "while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }" while (parenthesized_expression "(iVar6 = iVar9, iVar6 != 0)" ( (comma_expression "iVar6 = iVar9, iVar6 != 0" (assignment_expression "iVar6 = iVar9" identifier = identifier) , (binary_expression "iVar6 != 0" identifier != number_literal)) )) (compound_statement "{\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }" { (expression_statement "unaff_s4 = iVar6;" (assignment_expression "unaff_s4 = iVar6" identifier = identifier) ;) (expression_statement "iVar9 = *(int *)(iVar6 + 0x70);" (assignment_expression "iVar9 = *(int *)(iVar6 + 0x70)" identifier = (pointer_expression "*(int *)(iVar6 + 0x70)" * (cast_expression "(int *)(iVar6 + 0x70)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x70)" ( (binary_expression "iVar6 + 0x70" identifier + number_literal) ))))) ;) })) (if_statement "if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }" if (parenthesized_expression "(*(int *)(unaff_s4 + 0xf0) != 0)" ( (binary_expression "*(int *)(unaff_s4 + 0xf0) != 0" (pointer_expression "*(int *)(unaff_s4 + 0xf0)" * (cast_expression "(int *)(unaff_s4 + 0xf0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s4 + 0xf0)" ( (binary_expression "unaff_s4 + 0xf0" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }" { (expression_statement "unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);" (assignment_expression "unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18)" identifier = (cast_expression "(int *)(*(code *)PTR_malloc_0003d1e0)(0x18)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_malloc_0003d1e0)(0x18)" (parenthesized_expression "(*(code *)PTR_malloc_0003d1e0)" ( (pointer_expression "*(code *)PTR_malloc_0003d1e0" * (cast_expression "(code *)PTR_malloc_0003d1e0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(0x18)" ( number_literal ))))) ;) (if_statement "if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }" if (parenthesized_expression "(unaff_s8 != (int *)0x0)" ( (binary_expression "unaff_s8 != (int *)0x0" identifier != (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }" { (expression_statement "iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);" (assignment_expression "iVar9 = FUN_0001850c(param_3,param_4,unaff_s8)" identifier = (call_expression "FUN_0001850c(param_3,param_4,unaff_s8)" identifier (argument_list "(param_3,param_4,unaff_s8)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }" { (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (goto_statement "goto LAB_000192ac;" goto statement_identifier ;) })) (expression_statement "iVar9 = unaff_s4 + 0x94;" (assignment_expression "iVar9 = unaff_s4 + 0x94" identifier = (binary_expression "unaff_s4 + 0x94" identifier + number_literal)) ;) (expression_statement "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);" (assignment_expression "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" ( (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" * (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (if_statement "if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }" { (expression_statement "puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);" (assignment_expression "puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" identifier = (cast_expression "(undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" (parenthesized_expression "(*(code *)PTR_tsearch_0003d1a4)" ( (pointer_expression "*(code *)PTR_tsearch_0003d1a4" * (cast_expression "(code *)PTR_tsearch_0003d1a4" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" ( identifier , (binary_expression "unaff_s4 + 0x78" identifier + number_literal) , (binary_expression "PTR_0003d028 + 0x7760" identifier + number_literal) ))))) ;) (if_statement "if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }" if (parenthesized_expression "(puVar4 == (undefined4 *)0x0)" ( (binary_expression "puVar4 == (undefined4 *)0x0" identifier == (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }" { (expression_statement "FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);" (call_expression "FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28)" identifier (argument_list "(unaff_s4,PTR_DAT_0003d02c + -0x4c28)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4c28" identifier + number_literal) ))) ;) (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" ( (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" * (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (if_statement "if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }" { (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (goto_statement "goto LAB_00019504;" goto statement_identifier ;) })) }) (else_clause "else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }" else (compound_statement "{\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }" { (expression_statement "piVar3 = (int *)*puVar4;" (assignment_expression "piVar3 = (int *)*puVar4" identifier = (cast_expression "(int *)*puVar4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar4" * identifier))) ;) (if_statement "if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }" if (parenthesized_expression "(unaff_s8 != piVar3)" ( (binary_expression "unaff_s8 != piVar3" identifier != identifier) )) (compound_statement "{\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }" { (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) })) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" identifier = identifier) ;) (if_statement "if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }" if (parenthesized_expression "((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0))" ( (binary_expression "(uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)" (cast_expression "(uint)piVar3[5]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "piVar3[5]" identifier [ number_literal ])) < (pointer_expression "*(uint *)(unaff_s4 + 0xf0)" * (cast_expression "(uint *)(unaff_s4 + 0xf0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s4 + 0xf0)" ( (binary_expression "unaff_s4 + 0xf0" identifier + number_literal) ))))) )) (compound_statement "{\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }" { (expression_statement "piVar3[5] = piVar3[5] + 1;" (assignment_expression "piVar3[5] = piVar3[5] + 1" (subscript_expression "piVar3[5]" identifier [ number_literal ]) = (binary_expression "piVar3[5] + 1" (subscript_expression "piVar3[5]" identifier [ number_literal ]) + number_literal)) ;) (expression_statement "iVar9 = (*(code *)puVar1)(iVar9);" (assignment_expression "iVar9 = (*(code *)puVar1)(iVar9)" identifier = (call_expression "(*(code *)puVar1)(iVar9)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (if_statement "if (iVar9 == 0) goto LAB_000192ac;" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (goto_statement "goto LAB_000192ac;" goto statement_identifier ;)) }) (else_clause "else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }" else (compound_statement "{\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }" { (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" ( (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" * (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (if_statement "if (iVar9 == 0) goto LAB_00019504;" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00019504;" goto statement_identifier ;)) }))) }))) (expression_statement "FUN_000120c0();" (call_expression "FUN_000120c0()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_000196b4;" goto statement_identifier ;) })) (labeled_statement "LAB_00019cb4:\n        puVar12 = &_gp_1;" statement_identifier : (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;)) (expression_statement "entry();" (call_expression "entry()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_00019cc4;" goto statement_identifier ;) })) (goto_statement "goto LAB_00019504;" goto statement_identifier ;) })) (labeled_statement "LAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" statement_identifier : (if_statement "if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" if (parenthesized_expression "((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0))" ( (binary_expression "(*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)" (parenthesized_expression "(*(code **)(param_1 + 0x40) == (code *)0x0)" ( (binary_expression "*(code **)(param_1 + 0x40) == (code *)0x0" (pointer_expression "*(code **)(param_1 + 0x40)" * (cast_expression "(code **)(param_1 + 0x40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "(unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)" ( (comma_expression "unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0" (assignment_expression "unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4)" identifier = (call_expression "(**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4)" (parenthesized_expression "(**(code **)(param_1 + 0x40))" ( (pointer_expression "**(code **)(param_1 + 0x40)" * (pointer_expression "*(code **)(param_1 + 0x40)" * (cast_expression "(code **)(param_1 + 0x40)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(param_1 + 0x44),param_3,param_4)" ( (pointer_expression "*(undefined4 *)(param_1 + 0x44)" * (cast_expression "(undefined4 *)(param_1 + 0x44)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) )))) , identifier , identifier )))) , (binary_expression "unaff_s4 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" { (expression_statement "unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);" (assignment_expression "unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0)" identifier = (cast_expression "(int *)(*(code *)PTR_calloc_0003d120)(1,0xf0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR_calloc_0003d120)(1,0xf0)" (parenthesized_expression "(*(code *)PTR_calloc_0003d120)" ( (pointer_expression "*(code *)PTR_calloc_0003d120" * (cast_expression "(code *)PTR_calloc_0003d120" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(1,0xf0)" ( number_literal , number_literal ))))) ;) (if_statement "if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }" if (parenthesized_expression "(unaff_s8 == (int *)0x0)" ( (binary_expression "unaff_s8 == (int *)0x0" identifier == (cast_expression "(int *)0x0" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }" { (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar6 = *piVar3;" (assignment_expression "iVar6 = *piVar3" identifier = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar6)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier )))) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bbc" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (if_statement "if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }" if (parenthesized_expression "((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9))" ( (binary_expression "(iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)" (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar8 = 0x9ca, *piVar3 != 9)" ( (comma_expression "uVar8 = 0x9ca, *piVar3 != 9" (assignment_expression "uVar8 = 0x9ca" identifier = number_literal) , (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" * identifier) != number_literal)) ))) )) (compound_statement "{\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }" { (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" identifier (argument_list "(param_1,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (expression_statement "*piVar3 = iVar6;" (assignment_expression "*piVar3 = iVar6" (pointer_expression "*piVar3" * identifier) = identifier) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }) (else_clause "else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }" else (compound_statement "{\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }" { (expression_statement "uVar8 = *(undefined4 *)(param_1 + 0x7c);" (assignment_expression "uVar8 = *(undefined4 *)(param_1 + 0x7c)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x7c)" * (cast_expression "(undefined4 *)(param_1 + 0x7c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x7c)" ( (binary_expression "param_1 + 0x7c" identifier + number_literal) ))))) ;) (expression_statement "*(undefined1 *)((int)unaff_s8 + 0xa9) = 1;" (assignment_expression "*(undefined1 *)((int)unaff_s8 + 0xa9) = 1" (pointer_expression "*(undefined1 *)((int)unaff_s8 + 0xa9)" * (cast_expression "(undefined1 *)((int)unaff_s8 + 0xa9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)unaff_s8 + 0xa9)" ( (binary_expression "(int)unaff_s8 + 0xa9" (cast_expression "(int)unaff_s8" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "iVar9 = FUN_0001ea3c(uVar8);" (assignment_expression "iVar9 = FUN_0001ea3c(uVar8)" identifier = (call_expression "FUN_0001ea3c(uVar8)" identifier (argument_list "(uVar8)" ( identifier )))) ;) (expression_statement "unaff_s8[10] = iVar9;" (assignment_expression "unaff_s8[10] = iVar9" (subscript_expression "unaff_s8[10]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar1 = PTR_malloc_0003d1e0;" (assignment_expression "puVar1 = PTR_malloc_0003d1e0" identifier = identifier) ;) (if_statement "if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }" { (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(*piVar3)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*piVar3)" ( (pointer_expression "*piVar3" * identifier) )))) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bbc" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (if_statement "if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }" if (parenthesized_expression "((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9))" ( (binary_expression "(iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)" (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar8 = 0x9da, *piVar3 != 9)" ( (comma_expression "uVar8 = 0x9da, *piVar3 != 9" (assignment_expression "uVar8 = 0x9da" identifier = number_literal) , (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" * identifier) != number_literal)) ))) )) (compound_statement "{\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }" { (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" identifier (argument_list "(param_1,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "*piVar3 = 0xc;" (assignment_expression "*piVar3 = 0xc" (pointer_expression "*piVar3" * identifier) = number_literal) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }) (else_clause "else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }" else (compound_statement "{\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }" { (expression_statement "unaff_s8[0x26] = *(int *)(param_1 + 0xec);" (assignment_expression "unaff_s8[0x26] = *(int *)(param_1 + 0xec)" (subscript_expression "unaff_s8[0x26]" identifier [ number_literal ]) = (pointer_expression "*(int *)(param_1 + 0xec)" * (cast_expression "(int *)(param_1 + 0xec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xec)" ( (binary_expression "param_1 + 0xec" identifier + number_literal) ))))) ;) (expression_statement "iVar9 = (*(code *)puVar1)(param_4);" (assignment_expression "iVar9 = (*(code *)puVar1)(param_4)" identifier = (call_expression "(*(code *)puVar1)(param_4)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_4)" ( identifier )))) ;) (expression_statement "unaff_s8[0x15] = iVar9;" (assignment_expression "unaff_s8[0x15] = iVar9" (subscript_expression "unaff_s8[0x15]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }" { (expression_statement "(*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);" (call_expression "(*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4)" (parenthesized_expression "(*(code *)PTR_memcpy_0003d248)" ( (pointer_expression "*(code *)PTR_memcpy_0003d248" * (cast_expression "(code *)PTR_memcpy_0003d248" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (expression_statement "unaff_s8[0x24] = param_4;" (assignment_expression "unaff_s8[0x24] = param_4" (subscript_expression "unaff_s8[0x24]" identifier [ number_literal ]) = identifier) ;) (expression_statement "unaff_s8[0x29] = param_2;" (assignment_expression "unaff_s8[0x29] = param_2" (subscript_expression "unaff_s8[0x29]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(undefined1 *)(unaff_s8 + 0x2a) = param_6;" (assignment_expression "*(undefined1 *)(unaff_s8 + 0x2a) = param_6" (pointer_expression "*(undefined1 *)(unaff_s8 + 0x2a)" * (cast_expression "(undefined1 *)(unaff_s8 + 0x2a)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s8 + 0x2a)" ( (binary_expression "unaff_s8 + 0x2a" identifier + number_literal) )))) = identifier) ;) (expression_statement "unaff_s8[6] = param_1;" (assignment_expression "unaff_s8[6] = param_1" (subscript_expression "unaff_s8[6]" identifier [ number_literal ]) = identifier) ;) (expression_statement "iVar9 = FUN_0001f07c();" (assignment_expression "iVar9 = FUN_0001f07c()" identifier = (call_expression "FUN_0001f07c()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar7 = *(uint *)(param_1 + 0xf4);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0xf4)" identifier = (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[0x25] = iVar9;" (assignment_expression "unaff_s8[0x25] = iVar9" (subscript_expression "unaff_s8[0x25]" identifier [ number_literal ]) = identifier) ;) (if_statement "if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }" if (parenthesized_expression "((uVar7 & 2) != 0)" ( (binary_expression "(uVar7 & 2) != 0" (parenthesized_expression "(uVar7 & 2)" ( (binary_expression "uVar7 & 2" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }" { (expression_statement "iVar9 = 0x16;" (assignment_expression "iVar9 = 0x16" identifier = number_literal) ;) (goto_statement "goto LAB_00019374;" goto statement_identifier ;) })) (expression_statement "iVar6 = param_1 + 0xac;" (assignment_expression "iVar6 = param_1 + 0xac" identifier = (binary_expression "param_1 + 0xac" identifier + number_literal)) ;) (expression_statement "FUN_00014e60(unaff_s8);" (call_expression "FUN_00014e60(unaff_s8)" identifier (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" ( (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" * (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier )))) ;) (expression_statement "uVar8 = 0xa5d;" (assignment_expression "uVar8 = 0xa5d" identifier = number_literal) ;) (if_statement "if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }" { (if_statement "if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" if (parenthesized_expression "(*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8))" ( (binary_expression "*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)" (pointer_expression "*(uint *)(param_1 + 0xe4)" * (cast_expression "(uint *)(param_1 + 0xe4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe4)" ( (binary_expression "param_1 + 0xe4" identifier + number_literal) )))) < (pointer_expression "*(uint *)(param_1 + 0xe8)" * (cast_expression "(uint *)(param_1 + 0xe8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe8)" ( (binary_expression "param_1 + 0xe8" identifier + number_literal) ))))) )) (compound_statement "{\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }" { (expression_statement "*(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;" (assignment_expression "*(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1" (pointer_expression "*(uint *)(param_1 + 0xe4)" * (cast_expression "(uint *)(param_1 + 0xe4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe4)" ( (binary_expression "param_1 + 0xe4" identifier + number_literal) )))) = (binary_expression "*(uint *)(param_1 + 0xe4) + 1" (pointer_expression "*(uint *)(param_1 + 0xe4)" * (cast_expression "(uint *)(param_1 + 0xe4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xe4)" ( (binary_expression "param_1 + 0xe4" identifier + number_literal) )))) + number_literal)) ;) (if_statement "if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }" if (parenthesized_expression "((*(uint *)(param_1 + 0xf4) & 4) == 0)" ( (binary_expression "(*(uint *)(param_1 + 0xf4) & 4) == 0" (parenthesized_expression "(*(uint *)(param_1 + 0xf4) & 4)" ( (binary_expression "*(uint *)(param_1 + 0xf4) & 4" (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }" { (expression_statement "iVar9 = *(int *)(param_1 + 0x30);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x30)" identifier = (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "iVar11 = *(int *)(param_1 + 0x34);" (assignment_expression "iVar11 = *(int *)(param_1 + 0x34)" identifier = (pointer_expression "*(int *)(param_1 + 0x34)" * (cast_expression "(int *)(param_1 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34)" ( (binary_expression "param_1 + 0x34" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[5] = 0;" (assignment_expression "unaff_s8[5] = 0" (subscript_expression "unaff_s8[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "unaff_s8[4] = iVar9;" (assignment_expression "unaff_s8[4] = iVar9" (subscript_expression "unaff_s8[4]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }" { (expression_statement "*(int **)(param_1 + 0x34) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x34) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x34)" * (cast_expression "(int **)(param_1 + 0x34)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x34)" ( (binary_expression "param_1 + 0x34" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }" else (compound_statement "{\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }" { (expression_statement "*(int **)(iVar9 + 0x14) = unaff_s8;" (assignment_expression "*(int **)(iVar9 + 0x14) = unaff_s8" (pointer_expression "*(int **)(iVar9 + 0x14)" * (cast_expression "(int **)(iVar9 + 0x14)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0x14)" ( (binary_expression "iVar9 + 0x14" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "*(int **)(param_1 + 0x30) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x30) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x30)" * (cast_expression "(int **)(param_1 + 0x30)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) = identifier) ;) })) (expression_statement "iVar9 = *(int *)(param_1 + 8);" (assignment_expression "iVar9 = *(int *)(param_1 + 8)" identifier = (pointer_expression "*(int *)(param_1 + 8)" * (cast_expression "(int *)(param_1 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "iVar11 = *(int *)(param_1 + 0xc);" (assignment_expression "iVar11 = *(int *)(param_1 + 0xc)" identifier = (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[3] = 0;" (assignment_expression "unaff_s8[3] = 0" (subscript_expression "unaff_s8[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "unaff_s8[2] = iVar9;" (assignment_expression "unaff_s8[2] = iVar9" (subscript_expression "unaff_s8[2]" identifier [ number_literal ]) = identifier) ;) (if_statement "if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }" { (expression_statement "*(int **)(param_1 + 0xc) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0xc) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0xc)" * (cast_expression "(int **)(param_1 + 0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }" else (compound_statement "{\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }" { (expression_statement "*(int **)(iVar9 + 0xc) = unaff_s8;" (assignment_expression "*(int **)(iVar9 + 0xc) = unaff_s8" (pointer_expression "*(int **)(iVar9 + 0xc)" * (cast_expression "(int **)(iVar9 + 0xc)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 0xc)" ( (binary_expression "iVar9 + 0xc" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" identifier = identifier) ;) (expression_statement "*(int **)(param_1 + 8) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 8) = unaff_s8" (pointer_expression "*(int **)(param_1 + 8)" * (cast_expression "(int **)(param_1 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar9 = (*(code *)puVar1)(iVar6);" (assignment_expression "iVar9 = (*(code *)puVar1)(iVar6)" identifier = (call_expression "(*(code *)puVar1)(iVar6)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier )))) ;) (expression_statement "uVar8 = 0xa7b;" (assignment_expression "uVar8 = 0xa7b" identifier = number_literal) ;) (if_statement "if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }" { (if_statement "if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }" if (parenthesized_expression "(*(code **)(param_1 + 0x50) != (code *)0x0)" ( (binary_expression "*(code **)(param_1 + 0x50) != (code *)0x0" (pointer_expression "*(code **)(param_1 + 0x50)" * (cast_expression "(code **)(param_1 + 0x50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) )))) != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }" { (expression_statement "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);" (call_expression "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0)" (parenthesized_expression "(**(code **)(param_1 + 0x50))" ( (pointer_expression "**(code **)(param_1 + 0x50)" * (pointer_expression "*(code **)(param_1 + 0x50)" * (cast_expression "(code **)(param_1 + 0x50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0)" ( (pointer_expression "*(undefined4 *)(param_1 + 0x54)" * (cast_expression "(undefined4 *)(param_1 + 0x54)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x54)" ( (binary_expression "param_1 + 0x54" identifier + number_literal) )))) , identifier , (binary_expression "unaff_s8 + 0xc" identifier + number_literal) , number_literal ))) ;) })) (expression_statement "uVar7 = *(uint *)(param_1 + 0xf4);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0xf4)" identifier = (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) ))))) ;) (if_statement "if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" if (parenthesized_expression "((uVar7 & 4) == 0)" ( (binary_expression "(uVar7 & 4) == 0" (parenthesized_expression "(uVar7 & 4)" ( (binary_expression "uVar7 & 4" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }" { (expression_statement "iVar9 = *(int *)(param_1 + 0x90);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x90)" identifier = (pointer_expression "*(int *)(param_1 + 0x90)" * (cast_expression "(int *)(param_1 + 0x90)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x90)" ( (binary_expression "param_1 + 0x90" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[0x16] = *(int *)(param_1 + 0x8c);" (assignment_expression "unaff_s8[0x16] = *(int *)(param_1 + 0x8c)" (subscript_expression "unaff_s8[0x16]" identifier [ number_literal ]) = (pointer_expression "*(int *)(param_1 + 0x8c)" * (cast_expression "(int *)(param_1 + 0x8c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x8c)" ( (binary_expression "param_1 + 0x8c" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[0x17] = iVar9;" (assignment_expression "unaff_s8[0x17] = iVar9" (subscript_expression "unaff_s8[0x17]" identifier [ number_literal ]) = identifier) ;) (if_statement "if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }" if (parenthesized_expression "((uVar7 & 0x200) == 0)" ( (binary_expression "(uVar7 & 0x200) == 0" (parenthesized_expression "(uVar7 & 0x200)" ( (binary_expression "uVar7 & 0x200" identifier & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }" { (labeled_statement "LAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" statement_identifier : (if_statement "if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" if (parenthesized_expression "((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         ))" ( (binary_expression "(((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )" (parenthesized_expression "(((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1))" ( (binary_expression "((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)" (parenthesized_expression "((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1))" ( (binary_expression "(param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)" (parenthesized_expression "(param_5 != '\0')" ( (binary_expression "param_5 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) && (parenthesized_expression "(*(int *)(param_1 + 0xd8) != -1)" ( (binary_expression "*(int *)(param_1 + 0xd8) != -1" (pointer_expression "*(int *)(param_1 + 0xd8)" * (cast_expression "(int *)(param_1 + 0xd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xd8)" ( (binary_expression "param_1 + 0xd8" identifier + number_literal) )))) != number_literal) ))) )) && (parenthesized_expression "(iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)" ( (comma_expression "iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1" (assignment_expression "iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)" identifier = (call_expression "(*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)" (parenthesized_expression "(*(code *)PTR_write_0003d1b0)" ( (pointer_expression "*(code *)PTR_write_0003d1b0" * (cast_expression "(code *)PTR_write_0003d1b0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)" ( (pointer_expression "*(int *)(param_1 + 0xd8)" * (cast_expression "(int *)(param_1 + 0xd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xd8)" ( (binary_expression "param_1 + 0xd8" identifier + number_literal) )))) , (binary_expression "PTR_DAT_0003d02c + -0x3d30" identifier + number_literal) , number_literal )))) , (binary_expression "iVar9 < 1" identifier < number_literal)) ))) )) && (parenthesized_expression "(piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )" ( (comma_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) , (binary_expression "*piVar3 != 0xb" (pointer_expression "*piVar3" * identifier) != number_literal)) ))) )) (compound_statement "{\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" { (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" identifier = number_literal) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4b6c)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4b6c" identifier + number_literal) ))) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) }))) (labeled_statement "LAB_00019b00:\n                      unaff_s4 = 1;" statement_identifier : (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" identifier = number_literal) ;)) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }) (else_clause "else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" else (compound_statement "{\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" { (expression_statement "iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);" (assignment_expression "iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8)" identifier = (call_expression "FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8)" identifier (argument_list "(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8)" ( (binary_expression "unaff_s8 + 0x16" identifier + number_literal) , (binary_expression "PTR_DAT_0003d02c + -0x4b9c" identifier + number_literal) , (pointer_expression "*(undefined4 *)(param_1 + 0x84)" * (cast_expression "(undefined4 *)(param_1 + 0x84)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x84)" ( (binary_expression "param_1 + 0x84" identifier + number_literal) )))) , (binary_expression "PTR_LAB_0003d054 + -0x56bc" identifier + number_literal) , identifier )))) ;) (if_statement "if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }" { (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar9 = *piVar3;" (assignment_expression "iVar9 = *piVar3" identifier = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar9)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4b8c" identifier + number_literal) , identifier ))) ;) (goto_statement "goto LAB_00019374;" goto statement_identifier ;) })) (expression_statement "uVar7 = *(uint *)(param_1 + 0xf4);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0xf4)" identifier = (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) ))))) ;) (if_statement "if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }" if (parenthesized_expression "((uVar7 & 0x200) == 0)" ( (binary_expression "(uVar7 & 0x200) == 0" (parenthesized_expression "(uVar7 & 0x200)" ( (binary_expression "uVar7 & 0x200" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }" { (if_statement "if ((uVar7 & 4) == 0) goto LAB_00019b50;" if (parenthesized_expression "((uVar7 & 4) == 0)" ( (binary_expression "(uVar7 & 4) == 0" (parenthesized_expression "(uVar7 & 4)" ( (binary_expression "uVar7 & 4" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00019b50;" goto statement_identifier ;)) (goto_statement "goto LAB_00019b00;" goto statement_identifier ;) })) }))) (if_statement "if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }" if (parenthesized_expression "(((uVar7 & 0x1000) != 0) && (param_5 == '\0'))" ( (binary_expression "((uVar7 & 0x1000) != 0) && (param_5 == '\0')" (parenthesized_expression "((uVar7 & 0x1000) != 0)" ( (binary_expression "(uVar7 & 0x1000) != 0" (parenthesized_expression "(uVar7 & 0x1000)" ( (binary_expression "uVar7 & 0x1000" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "(param_5 == '\0')" ( (binary_expression "param_5 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }" { (expression_statement "iVar9 = *(int *)(param_1 + 0x20);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x20)" identifier = (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) ))))) ;) (expression_statement "iVar6 = *(int *)(param_1 + 0x24);" (assignment_expression "iVar6 = *(int *)(param_1 + 0x24)" identifier = (pointer_expression "*(int *)(param_1 + 0x24)" * (cast_expression "(int *)(param_1 + 0x24)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x24)" ( (binary_expression "param_1 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "unaff_s8[1] = 0;" (assignment_expression "unaff_s8[1] = 0" (subscript_expression "unaff_s8[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "unaff_s8[0x2c] = unaff_s8[0x2c] | 7;" (assignment_expression "unaff_s8[0x2c] = unaff_s8[0x2c] | 7" (subscript_expression "unaff_s8[0x2c]" identifier [ number_literal ]) = (binary_expression "unaff_s8[0x2c] | 7" (subscript_expression "unaff_s8[0x2c]" identifier [ number_literal ]) | number_literal)) ;) (expression_statement "*unaff_s8 = iVar9;" (assignment_expression "*unaff_s8 = iVar9" (pointer_expression "*unaff_s8" * identifier) = identifier) ;) (if_statement "if (iVar6 == 0) goto LAB_00019c54;" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00019c54;" goto statement_identifier ;)) (expression_statement "*(int **)(iVar9 + 4) = unaff_s8;" (assignment_expression "*(int **)(iVar9 + 4) = unaff_s8" (pointer_expression "*(int **)(iVar9 + 4)" * (cast_expression "(int **)(iVar9 + 4)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar9 + 4)" ( (binary_expression "iVar9 + 4" identifier + number_literal) )))) = identifier) ;) (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" identifier = number_literal) ;) (expression_statement "*(int **)(param_1 + 0x20) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x20) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x20)" * (cast_expression "(int **)(param_1 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) = identifier) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (expression_statement "local_40[0] = 0x80000007;" (assignment_expression "local_40[0] = 0x80000007" (subscript_expression "local_40[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_38 = unaff_s8;" (assignment_expression "local_38 = unaff_s8" identifier = identifier) ;) (expression_statement "iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);" (assignment_expression "iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40)" identifier = (call_expression "(*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40)" (parenthesized_expression "(*(code *)PTR_epoll_ctl_0003d1f8)" ( (pointer_expression "*(code *)PTR_epoll_ctl_0003d1f8" * (cast_expression "(code *)PTR_epoll_ctl_0003d1f8" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40)" ( (pointer_expression "*(undefined4 *)(param_1 + 0xd0)" * (cast_expression "(undefined4 *)(param_1 + 0xd0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xd0)" ( (binary_expression "param_1 + 0xd0" identifier + number_literal) )))) , number_literal , identifier , identifier )))) ;) (if_statement "if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }" { (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" identifier = number_literal) ;) (expression_statement "unaff_s8[0x2c] = unaff_s8[0x2c] | 8;" (assignment_expression "unaff_s8[0x2c] = unaff_s8[0x2c] | 8" (subscript_expression "unaff_s8[0x2c]" identifier [ number_literal ]) = (binary_expression "unaff_s8[0x2c] | 8" (subscript_expression "unaff_s8[0x2c]" identifier [ number_literal ]) | number_literal)) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar9 = *piVar3;" (assignment_expression "iVar9 = *piVar3" identifier = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar9)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar9)" ( identifier )))) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x5ea8" identifier + number_literal) , identifier ))) ;) (labeled_statement "LAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }" statement_identifier : (if_statement "if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }" if (parenthesized_expression "(*(code **)(param_1 + 0x50) != (code *)0x0)" ( (binary_expression "*(code **)(param_1 + 0x50) != (code *)0x0" (pointer_expression "*(code **)(param_1 + 0x50)" * (cast_expression "(code **)(param_1 + 0x50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) )))) != (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }" { (expression_statement "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);" (call_expression "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1)" (parenthesized_expression "(**(code **)(param_1 + 0x50))" ( (pointer_expression "**(code **)(param_1 + 0x50)" * (pointer_expression "*(code **)(param_1 + 0x50)" * (cast_expression "(code **)(param_1 + 0x50)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) ))))) )) (argument_list "(*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1)" ( (pointer_expression "*(undefined4 *)(param_1 + 0x54)" * (cast_expression "(undefined4 *)(param_1 + 0x54)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x54)" ( (binary_expression "param_1 + 0x54" identifier + number_literal) )))) , identifier , (binary_expression "unaff_s8 + 0xc" identifier + number_literal) , number_literal ))) ;) }))) (expression_statement "iVar6 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar6 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (if_statement "if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }" { (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar8 = 0xad2;" (assignment_expression "uVar8 = 0xad2" identifier = number_literal) ;) (if_statement "if (*piVar3 == 9) goto LAB_000196e8;" if (parenthesized_expression "(*piVar3 == 9)" ( (binary_expression "*piVar3 == 9" (pointer_expression "*piVar3" * identifier) == number_literal) )) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;)) })) (expression_statement "iVar11 = param_1 + 0xac;" (assignment_expression "iVar11 = param_1 + 0xac" identifier = (binary_expression "param_1 + 0xac" identifier + number_literal)) ;) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" identifier (argument_list "(param_1,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (expression_statement "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);" (assignment_expression "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" ( (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" * (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar11)" ( identifier )))) ;) (expression_statement "param_4 = iVar11;" (assignment_expression "param_4 = iVar11" identifier = identifier) ;) (if_statement "if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }" if (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) (compound_statement "{\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }" { (expression_statement "uVar8 = 0xad7;" (assignment_expression "uVar8 = 0xad7" identifier = number_literal) ;) (goto_statement "goto LAB_00019c68;" goto statement_identifier ;) })) (if_statement "if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }" if (parenthesized_expression "((*(uint *)(param_1 + 0xf4) & 4) == 0)" ( (binary_expression "(*(uint *)(param_1 + 0xf4) & 4) == 0" (parenthesized_expression "(*(uint *)(param_1 + 0xf4) & 4)" ( (binary_expression "*(uint *)(param_1 + 0xf4) & 4" (pointer_expression "*(uint *)(param_1 + 0xf4)" * (cast_expression "(uint *)(param_1 + 0xf4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xf4)" ( (binary_expression "param_1 + 0xf4" identifier + number_literal) )))) & number_literal) )) == number_literal) )) (compound_statement "{\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }" { (expression_statement "iVar6 = unaff_s8[4];" (assignment_expression "iVar6 = unaff_s8[4]" identifier = (subscript_expression "unaff_s8[4]" identifier [ number_literal ])) ;) (if_statement "if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }" if (parenthesized_expression "(unaff_s8[5] == 0)" ( (binary_expression "unaff_s8[5] == 0" (subscript_expression "unaff_s8[5]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }" { (expression_statement "*(int *)(param_1 + 0x30) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x30) = iVar6" (pointer_expression "*(int *)(param_1 + 0x30)" * (cast_expression "(int *)(param_1 + 0x30)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }" else (compound_statement "{\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }" { (expression_statement "*(int *)(unaff_s8[5] + 0x10) = iVar6;" (assignment_expression "*(int *)(unaff_s8[5] + 0x10) = iVar6" (pointer_expression "*(int *)(unaff_s8[5] + 0x10)" * (cast_expression "(int *)(unaff_s8[5] + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s8[5] + 0x10)" ( (binary_expression "unaff_s8[5] + 0x10" (subscript_expression "unaff_s8[5]" identifier [ number_literal ]) + number_literal) )))) = identifier) ;) (expression_statement "iVar6 = unaff_s8[4];" (assignment_expression "iVar6 = unaff_s8[4]" identifier = (subscript_expression "unaff_s8[4]" identifier [ number_literal ])) ;) (expression_statement "iVar5 = unaff_s8[5];" (assignment_expression "iVar5 = unaff_s8[5]" identifier = (subscript_expression "unaff_s8[5]" identifier [ number_literal ])) ;) }))) (if_statement "if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }" { (expression_statement "*(int *)(param_1 + 0x34) = iVar5;" (assignment_expression "*(int *)(param_1 + 0x34) = iVar5" (pointer_expression "*(int *)(param_1 + 0x34)" * (cast_expression "(int *)(param_1 + 0x34)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x34)" ( (binary_expression "param_1 + 0x34" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }" else (compound_statement "{\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }" { (expression_statement "*(int *)(iVar6 + 0x14) = iVar5;" (assignment_expression "*(int *)(iVar6 + 0x14) = iVar5" (pointer_expression "*(int *)(iVar6 + 0x14)" * (cast_expression "(int *)(iVar6 + 0x14)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x14)" ( (binary_expression "iVar6 + 0x14" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "unaff_s8[4] = 0;" (assignment_expression "unaff_s8[4] = 0" (subscript_expression "unaff_s8[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "unaff_s8[5] = 0;" (assignment_expression "unaff_s8[5] = 0" (subscript_expression "unaff_s8[5]" identifier [ number_literal ]) = number_literal) ;) })) (expression_statement "iVar6 = unaff_s8[2];" (assignment_expression "iVar6 = unaff_s8[2]" identifier = (subscript_expression "unaff_s8[2]" identifier [ number_literal ])) ;) (if_statement "if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }" if (parenthesized_expression "(unaff_s8[3] == 0)" ( (binary_expression "unaff_s8[3] == 0" (subscript_expression "unaff_s8[3]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }" { (expression_statement "*(int *)(param_1 + 8) = iVar6;" (assignment_expression "*(int *)(param_1 + 8) = iVar6" (pointer_expression "*(int *)(param_1 + 8)" * (cast_expression "(int *)(param_1 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" identifier = number_literal) ;) }) (else_clause "else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }" else (compound_statement "{\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }" { (expression_statement "*(int *)(unaff_s8[3] + 8) = iVar6;" (assignment_expression "*(int *)(unaff_s8[3] + 8) = iVar6" (pointer_expression "*(int *)(unaff_s8[3] + 8)" * (cast_expression "(int *)(unaff_s8[3] + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s8[3] + 8)" ( (binary_expression "unaff_s8[3] + 8" (subscript_expression "unaff_s8[3]" identifier [ number_literal ]) + number_literal) )))) = identifier) ;) (expression_statement "iVar6 = unaff_s8[2];" (assignment_expression "iVar6 = unaff_s8[2]" identifier = (subscript_expression "unaff_s8[2]" identifier [ number_literal ])) ;) (expression_statement "iVar5 = unaff_s8[3];" (assignment_expression "iVar5 = unaff_s8[3]" identifier = (subscript_expression "unaff_s8[3]" identifier [ number_literal ])) ;) }))) (if_statement "if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }" { (expression_statement "*(int *)(param_1 + 0xc) = iVar5;" (assignment_expression "*(int *)(param_1 + 0xc) = iVar5" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) = identifier) ;) }) (else_clause "else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }" else (compound_statement "{\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }" { (expression_statement "*(int *)(iVar6 + 0xc) = iVar5;" (assignment_expression "*(int *)(iVar6 + 0xc) = iVar5" (pointer_expression "*(int *)(iVar6 + 0xc)" * (cast_expression "(int *)(iVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xc)" ( (binary_expression "iVar6 + 0xc" identifier + number_literal) )))) = identifier) ;) }))) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" identifier = identifier) ;) (expression_statement "unaff_s8[2] = 0;" (assignment_expression "unaff_s8[2] = 0" (subscript_expression "unaff_s8[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "unaff_s8[3] = 0;" (assignment_expression "unaff_s8[3] = 0" (subscript_expression "unaff_s8[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "iVar6 = (*(code *)puVar1)(iVar11);" (assignment_expression "iVar6 = (*(code *)puVar1)(iVar11)" identifier = (call_expression "(*(code *)puVar1)(iVar11)" (parenthesized_expression "(*(code *)puVar1)" ( (pointer_expression "*(code *)puVar1" * (cast_expression "(code *)puVar1" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar11)" ( identifier )))) ;) (if_statement "if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }" { (expression_statement "FUN_0001eb80(unaff_s8[10]);" (call_expression "FUN_0001eb80(unaff_s8[10])" identifier (argument_list "(unaff_s8[10])" ( (subscript_expression "unaff_s8[10]" identifier [ number_literal ]) ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8[0x15]);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8[0x15])" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8[0x15])" ( (subscript_expression "unaff_s8[0x15]" identifier [ number_literal ]) ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (if_statement "if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }" { (expression_statement "*piVar3 = iVar9;" (assignment_expression "*piVar3 = iVar9" (pointer_expression "*piVar3" * identifier) = identifier) ;) (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (goto_statement "goto LAB_000195a8;" goto statement_identifier ;) })) (goto_statement "goto LAB_00019c8c;" goto statement_identifier ;) })) }) (else_clause "else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" else (compound_statement "{\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" { (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6)" identifier = (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" ( (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" * (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier )))) ;) (expression_statement "uVar8 = 0xa63;" (assignment_expression "uVar8 = 0xa63" identifier = number_literal) ;) (if_statement "if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }" { (expression_statement "iVar9 = 0x17;" (assignment_expression "iVar9 = 0x17" identifier = number_literal) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bfc" identifier + number_literal) , number_literal ))) ;) (goto_statement "goto LAB_00019374;" goto statement_identifier ;) })) }))) }) (else_clause "else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }" else (compound_statement "{\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }" { (labeled_statement "LAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);" statement_identifier : (expression_statement "(**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);" (call_expression "(**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0)" (parenthesized_expression "(**(code **)PTR_DAT_0003d03c)" ( (pointer_expression "**(code **)PTR_DAT_0003d03c" * (pointer_expression "*(code **)PTR_DAT_0003d03c" * (cast_expression "(code **)PTR_DAT_0003d03c" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (argument_list "(*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0)" ( (pointer_expression "*(undefined4 *)PTR_DAT_0003d038" * (cast_expression "(undefined4 *)PTR_DAT_0003d038" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_DAT_0003d02c + -0x51b0" identifier + number_literal) , identifier , (binary_expression "PTR_DAT_0003d02c + -0x62c0" identifier + number_literal) ))) ;)) (labeled_statement "LAB_00019c8c:\n              uVar8 = 0xae3;" statement_identifier : (expression_statement "uVar8 = 0xae3;" (assignment_expression "uVar8 = 0xae3" identifier = number_literal) ;)) }))) (expression_statement "(**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);" (call_expression "(**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298)" (parenthesized_expression "(**(code **)PTR_DAT_0003d03c)" ( (pointer_expression "**(code **)PTR_DAT_0003d03c" * (pointer_expression "*(code **)PTR_DAT_0003d03c" * (cast_expression "(code **)PTR_DAT_0003d03c" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (argument_list "(*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298)" ( (pointer_expression "*(undefined4 *)PTR_DAT_0003d038" * (cast_expression "(undefined4 *)PTR_DAT_0003d038" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_DAT_0003d02c + -0x51b0" identifier + number_literal) , identifier , (binary_expression "PTR_DAT_0003d02c + -0x6298" identifier + number_literal) ))) ;) (goto_statement "goto LAB_00019cb4;" goto statement_identifier ;) })) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "iVar6 = *piVar3;" (assignment_expression "iVar6 = *piVar3" identifier = (pointer_expression "*piVar3" * identifier)) ;) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6)" identifier = (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar6)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" ( (pointer_expression "*(code *)PTR_strerror_0003d1dc" * (cast_expression "(code *)PTR_strerror_0003d1dc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(iVar6)" ( identifier )))) ;) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4bbc" identifier + number_literal) , identifier ))) ;) (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (if_statement "if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }" if (parenthesized_expression "((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9))" ( (binary_expression "(iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)" (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) || (parenthesized_expression "(uVar8 = 0x9ee, *piVar3 != 9)" ( (comma_expression "uVar8 = 0x9ee, *piVar3 != 9" (assignment_expression "uVar8 = 0x9ee" identifier = number_literal) , (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" * identifier) != number_literal)) ))) )) (compound_statement "{\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }" { (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" identifier (argument_list "(param_1,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (expression_statement "FUN_0001eb80(unaff_s8[10]);" (call_expression "FUN_0001eb80(unaff_s8[10])" identifier (argument_list "(unaff_s8[10])" ( (subscript_expression "unaff_s8[10]" identifier [ number_literal ]) ))) ;) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" ( (pointer_expression "*(code *)PTR_free_0003d250" * (cast_expression "(code *)PTR_free_0003d250" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(unaff_s8)" ( identifier ))) ;) (expression_statement "*piVar3 = iVar6;" (assignment_expression "*piVar3 = iVar6" (pointer_expression "*piVar3" * identifier) = identifier) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) }))) }))) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;) }))) (labeled_statement "LAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);" statement_identifier : (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;)) (if_statement "if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (compound_statement "{\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }" { (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "uVar8 = 0x9b8;" (assignment_expression "uVar8 = 0x9b8" identifier = number_literal) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (if_statement "if (*piVar3 == 9) goto LAB_000196e8;" if (parenthesized_expression "(*piVar3 == 9)" ( (binary_expression "*piVar3 == 9" (pointer_expression "*piVar3" * identifier) == number_literal) )) (goto_statement "goto LAB_000196e8;" goto statement_identifier ;)) })) }) (else_clause "else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }" else (compound_statement "{\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }" { (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400)" identifier (argument_list "(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400)" ( identifier , (binary_expression "PTR_DAT_0003d02c + -0x4c5c" identifier + number_literal) , identifier , number_literal ))) ;) (expression_statement "param_4 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "param_4 = (*(code *)PTR_close_0003d128)(param_2)" identifier = (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" ( (pointer_expression "*(code *)PTR_close_0003d128" * (cast_expression "(code *)PTR_close_0003d128" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" identifier = (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" ( (pointer_expression "*(code *)PTR___errno_location_0003d198" * (cast_expression "(code *)PTR___errno_location_0003d198" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))))) ;) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" identifier = (pointer_expression "&_gp_1" & identifier)) ;) (if_statement "if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }" if (parenthesized_expression "((param_4 == 0) || (*piVar3 != 9))" ( (binary_expression "(param_4 == 0) || (*piVar3 != 9)" (parenthesized_expression "(param_4 == 0)" ( (binary_expression "param_4 == 0" identifier == number_literal) )) || (parenthesized_expression "(*piVar3 != 9)" ( (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" * identifier) != number_literal) ))) )) (compound_statement "{\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }" { (labeled_statement "LAB_000195a8:\n      unaff_s4 = 0;" statement_identifier : (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" identifier = number_literal) ;)) (expression_statement "*piVar3 = 0x16;" (assignment_expression "*piVar3 = 0x16" (pointer_expression "*piVar3" * identifier) = number_literal) ;) (goto_statement "goto LAB_00019220;" goto statement_identifier ;) })) (labeled_statement "LAB_00019cc4:\n    uVar8 = 0x979;" statement_identifier : (expression_statement "uVar8 = 0x979;" (assignment_expression "uVar8 = 0x979" identifier = number_literal) ;)) (labeled_statement "LAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);" statement_identifier : (expression_statement "puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);" (assignment_expression "puVar4 = *(undefined4 **)(puVar12 + -0x7fc8)" identifier = (pointer_expression "*(undefined4 **)(puVar12 + -0x7fc8)" * (cast_expression "(undefined4 **)(puVar12 + -0x7fc8)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar12 + -0x7fc8)" ( (binary_expression "puVar12 + -0x7fc8" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);" statement_identifier : (expression_statement "(*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);" (call_expression "(*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc)" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar12 + -0x7fc4))" ( (pointer_expression "*(code *)**(undefined4 **)(puVar12 + -0x7fc4)" * (cast_expression "(code *)**(undefined4 **)(puVar12 + -0x7fc4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar12 + -0x7fc4)" * (pointer_expression "*(undefined4 **)(puVar12 + -0x7fc4)" * (cast_expression "(undefined4 **)(puVar12 + -0x7fc4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar12 + -0x7fc4)" ( (binary_expression "puVar12 + -0x7fc4" identifier + number_literal) ))))))) )) (argument_list "(*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc)" ( (pointer_expression "*puVar4" * identifier) , (binary_expression "*(int *)(puVar12 + -0x7fd4) + -0x51b0" (pointer_expression "*(int *)(puVar12 + -0x7fd4)" * (cast_expression "(int *)(puVar12 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0x7fd4)" ( (binary_expression "puVar12 + -0x7fd4" identifier + number_literal) )))) + number_literal) , identifier , (binary_expression "*(int *)(puVar12 + -0x7fd4) + -0x4cfc" (pointer_expression "*(int *)(puVar12 + -0x7fd4)" * (cast_expression "(int *)(puVar12 + -0x7fd4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar12 + -0x7fd4)" ( (binary_expression "puVar12 + -0x7fd4" identifier + number_literal) )))) + number_literal) ))) ;)) }))) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" identifier (argument_list "(param_1,param_3,param_4)" ( identifier , identifier , identifier ))) ;) (labeled_statement "LAB_00019220:\n  while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }" statement_identifier : (while_statement "while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }" while (parenthesized_expression "(local_2c != *piVar10)" ( (binary_expression "local_2c != *piVar10" identifier != (pointer_expression "*piVar10" * identifier)) )) (compound_statement "{\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }" { (expression_statement "(*(code *)PTR___stack_chk_fail_0003d21c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0003d21c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0003d21c)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_0003d21c" * (cast_expression "(code *)PTR___stack_chk_fail_0003d21c" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (labeled_statement "LAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;" statement_identifier : (expression_statement "*(int **)(param_1 + 0x24) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x24) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x24)" * (cast_expression "(int **)(param_1 + 0x24)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x24)" ( (binary_expression "param_1 + 0x24" identifier + number_literal) )))) = identifier) ;)) (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" identifier = number_literal) ;) (expression_statement "*(int **)(param_1 + 0x20) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x20) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x20)" * (cast_expression "(int **)(param_1 + 0x20)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) = identifier) ;) }))) (return_statement "return unaff_s4;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration 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 (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT % IDENT) )) * LIT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + IDENT) == IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT % IDENT) )) * LIT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , LIT , IDENT )))) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (pointer_expression * IDENT) == LIT)) ))) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) ))) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression (pointer_expression * IDENT) != LIT))) ))) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (subscript_expression IDENT [ LIT ]) + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) }))) }))) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , IDENT )))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( LIT , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (pointer_expression * IDENT) != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * IDENT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (pointer_expression * IDENT) != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (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 (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , (binary_expression IDENT + LIT) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (binary_expression IDENT + LIT) , LIT )))) , (binary_expression IDENT < LIT)) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) , (binary_expression (pointer_expression * IDENT) != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) ))) ;) (goto_statement goto statement_identifier ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (binary_expression IDENT + LIT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) && (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (subscript_expression IDENT [ LIT ]) | LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (subscript_expression IDENT [ LIT ]) | LIT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT ))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , (binary_expression IDENT + LIT) , LIT ))) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (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 IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }) (else_clause else (compound_statement { (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 (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (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 IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }) (else_clause else (compound_statement { (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 IDENT = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , LIT ))) ;) (goto_statement goto statement_identifier ;) })) }))) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT + LIT) , IDENT , (binary_expression IDENT + LIT) ))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT + LIT) , IDENT , (binary_expression IDENT + LIT) ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression (pointer_expression * IDENT) != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (goto_statement goto statement_identifier ;) })) }))) }))) (goto_statement goto statement_identifier ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (goto_statement goto statement_identifier ;)) })) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) )) (argument_list ( (pointer_expression * IDENT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT , (binary_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 ( IDENT , IDENT , IDENT ))) ;) (labeled_statement statement_identifier : (while_statement while (parenthesized_expression ( (binary_expression IDENT != (pointer_expression * IDENT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) }))) (return_statement return IDENT ;) })))
(function_definition "int FUN_000190fc(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,\n                undefined1 param_6)\n\n{\n  undefined *puVar1;\n  uint uVar2;\n  int *piVar3;\n  undefined4 *puVar4;\n  int iVar5;\n  int iVar6;\n  uint uVar7;\n  undefined4 uVar8;\n  int iVar9;\n  int *piVar10;\n  int iVar11;\n  int unaff_s4;\n  int *unaff_s8;\n  undefined1 *puVar12;\n  undefined4 local_40 [2];\n  int *local_38;\n  int local_2c;\n  \n  piVar10 = (int *)PTR___stack_chk_guard_0003d244;\n  puVar12 = &_gp_1;\n  local_2c = *(int *)PTR___stack_chk_guard_0003d244;\n  if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }\n  if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }\n  FUN_0001871c(param_1,param_3,param_4);\nLAB_00019220:\n  while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }\n  return unaff_s4;\n}" (primitive_type "int") (function_declarator "FUN_000190fc(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,\n                undefined1 param_6)" (identifier "FUN_000190fc") (parameter_list "(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,\n                undefined1 param_6)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) (, ",") (parameter_declaration "uint param_2" (type_identifier "uint") (identifier "param_2")) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) (, ",") (parameter_declaration "int param_4" (primitive_type "int") (identifier "param_4")) (, ",") (parameter_declaration "char param_5" (primitive_type "char") (identifier "param_5")) (, ",") (parameter_declaration "undefined1 param_6" (type_identifier "undefined1") (identifier "param_6")) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  uint uVar2;\n  int *piVar3;\n  undefined4 *puVar4;\n  int iVar5;\n  int iVar6;\n  uint uVar7;\n  undefined4 uVar8;\n  int iVar9;\n  int *piVar10;\n  int iVar11;\n  int unaff_s4;\n  int *unaff_s8;\n  undefined1 *puVar12;\n  undefined4 local_40 [2];\n  int *local_38;\n  int local_2c;\n  \n  piVar10 = (int *)PTR___stack_chk_guard_0003d244;\n  puVar12 = &_gp_1;\n  local_2c = *(int *)PTR___stack_chk_guard_0003d244;\n  if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }\n  if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }\n  FUN_0001871c(param_1,param_3,param_4);\nLAB_00019220:\n  while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }\n  return unaff_s4;\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "uint uVar2;" (type_identifier "uint") (identifier "uVar2") (; ";")) (declaration "int *piVar3;" (primitive_type "int") (pointer_declarator "*piVar3" (* "*") (identifier "piVar3")) (; ";")) (declaration "undefined4 *puVar4;" (type_identifier "undefined4") (pointer_declarator "*puVar4" (* "*") (identifier "puVar4")) (; ";")) (declaration "int iVar5;" (primitive_type "int") (identifier "iVar5") (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "uint uVar7;" (type_identifier "uint") (identifier "uVar7") (; ";")) (declaration "undefined4 uVar8;" (type_identifier "undefined4") (identifier "uVar8") (; ";")) (declaration "int iVar9;" (primitive_type "int") (identifier "iVar9") (; ";")) (declaration "int *piVar10;" (primitive_type "int") (pointer_declarator "*piVar10" (* "*") (identifier "piVar10")) (; ";")) (declaration "int iVar11;" (primitive_type "int") (identifier "iVar11") (; ";")) (declaration "int unaff_s4;" (primitive_type "int") (identifier "unaff_s4") (; ";")) (declaration "int *unaff_s8;" (primitive_type "int") (pointer_declarator "*unaff_s8" (* "*") (identifier "unaff_s8")) (; ";")) (declaration "undefined1 *puVar12;" (type_identifier "undefined1") (pointer_declarator "*puVar12" (* "*") (identifier "puVar12")) (; ";")) (declaration "undefined4 local_40 [2];" (type_identifier "undefined4") (array_declarator "local_40 [2]" (identifier "local_40") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "int *local_38;" (primitive_type "int") (pointer_declarator "*local_38" (* "*") (identifier "local_38")) (; ";")) (declaration "int local_2c;" (primitive_type "int") (identifier "local_2c") (; ";")) (expression_statement "piVar10 = (int *)PTR___stack_chk_guard_0003d244;" (assignment_expression "piVar10 = (int *)PTR___stack_chk_guard_0003d244" (identifier "piVar10") (= "=") (cast_expression "(int *)PTR___stack_chk_guard_0003d244" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_0003d244"))) (; ";")) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" (identifier "puVar12") (= "=") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1"))) (; ";")) (expression_statement "local_2c = *(int *)PTR___stack_chk_guard_0003d244;" (assignment_expression "local_2c = *(int *)PTR___stack_chk_guard_0003d244" (identifier "local_2c") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_0003d244" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_0003d244" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_0003d244")))) (; ";")) (if_statement "if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }" (if "if") (parenthesized_expression "((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0))" (( "(") (binary_expression "(param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)" (parenthesized_expression "(param_5 != '\0')" (( "(") (binary_expression "param_5 != '\0'" (identifier "param_5") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)" (( "(") (comma_expression "iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0" (assignment_expression "iVar9 = *(int *)(param_1 + 0x74)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)(param_1 + 0x74)" (* "*") (cast_expression "(int *)(param_1 + 0x74)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x74)" (( "(") (binary_expression "param_1 + 0x74" (identifier "param_1") (+ "+") (number_literal "0x74")) () ")"))))) (, ",") (binary_expression "iVar9 != 0" (identifier "iVar9") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n    uVar7 = *(uint *)(param_1 + 0x88);\n    if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }\nLAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;\nLAB_00019214:\n    unaff_s4 = 0;\n    *piVar3 = 0x17;\n    goto LAB_00019220;\n  }" ({ "{") (expression_statement "uVar7 = *(uint *)(param_1 + 0x88);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0x88)" (identifier "uVar7") (= "=") (pointer_expression "*(uint *)(param_1 + 0x88)" (* "*") (cast_expression "(uint *)(param_1 + 0x88)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x88)" (( "(") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")"))))) (; ";")) (if_statement "if (uVar7 != 0) {\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }" (if "if") (parenthesized_expression "(uVar7 != 0)" (( "(") (binary_expression "uVar7 != 0" (identifier "uVar7") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      if (uVar7 == 0) {\n        trap(7);\n      }\n      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;\n      uVar2 = param_2 + 1;\n      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }\n      unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);\n      goto LAB_00019220;\n    }" ({ "{") (if_statement "if (uVar7 == 0) {\n        trap(7);\n      }" (if "if") (parenthesized_expression "(uVar7 == 0)" (( "(") (binary_expression "uVar7 == 0" (identifier "uVar7") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        trap(7);\n      }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar6 = (param_2 % uVar7) * 0x130 + iVar9;" (assignment_expression "iVar6 = (param_2 % uVar7) * 0x130 + iVar9" (identifier "iVar6") (= "=") (binary_expression "(param_2 % uVar7) * 0x130 + iVar9" (binary_expression "(param_2 % uVar7) * 0x130" (parenthesized_expression "(param_2 % uVar7)" (( "(") (binary_expression "param_2 % uVar7" (identifier "param_2") (% "%") (identifier "uVar7")) () ")")) (* "*") (number_literal "0x130")) (+ "+") (identifier "iVar9"))) (; ";")) (expression_statement "uVar2 = param_2 + 1;" (assignment_expression "uVar2 = param_2 + 1" (identifier "uVar2") (= "=") (binary_expression "param_2 + 1" (identifier "param_2") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }" (if "if") (parenthesized_expression "(*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4))" (( "(") (binary_expression "*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)" (pointer_expression "*(uint *)(iVar6 + 0xe8)" (* "*") (cast_expression "(uint *)(iVar6 + 0xe8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0xe8)" (( "(") (binary_expression "iVar6 + 0xe8" (identifier "iVar6") (+ "+") (number_literal "0xe8")) () ")")))) (<= "<=") (pointer_expression "*(uint *)(iVar6 + 0xe4)" (* "*") (cast_expression "(uint *)(iVar6 + 0xe4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0xe4)" (( "(") (binary_expression "iVar6 + 0xe4" (identifier "iVar6") (+ "+") (number_literal "0xe4")) () ")"))))) () ")")) (compound_statement "{\n        do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));\n      }" ({ "{") (do_statement "do {\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));" (do "do") (compound_statement "{\n          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;\n          if (uVar7 == 0) {\n            trap(7);\n          }\n          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;\n          uVar2 = uVar2 + 1;\n        }" ({ "{") (if_statement "if (param_2 + uVar7 == uVar2) goto LAB_000191e0;" (if "if") (parenthesized_expression "(param_2 + uVar7 == uVar2)" (( "(") (binary_expression "param_2 + uVar7 == uVar2" (binary_expression "param_2 + uVar7" (identifier "param_2") (+ "+") (identifier "uVar7")) (== "==") (identifier "uVar2")) () ")")) (goto_statement "goto LAB_000191e0;" (goto "goto") (statement_identifier "LAB_000191e0") (; ";"))) (if_statement "if (uVar7 == 0) {\n            trap(7);\n          }" (if "if") (parenthesized_expression "(uVar7 == 0)" (( "(") (binary_expression "uVar7 == 0" (identifier "uVar7") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            trap(7);\n          }" ({ "{") (expression_statement "trap(7);" (call_expression "trap(7)" (identifier "trap") (argument_list "(7)" (( "(") (number_literal "7") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;" (assignment_expression "iVar6 = (uVar2 % uVar7) * 0x130 + iVar9" (identifier "iVar6") (= "=") (binary_expression "(uVar2 % uVar7) * 0x130 + iVar9" (binary_expression "(uVar2 % uVar7) * 0x130" (parenthesized_expression "(uVar2 % uVar7)" (( "(") (binary_expression "uVar2 % uVar7" (identifier "uVar2") (% "%") (identifier "uVar7")) () ")")) (* "*") (number_literal "0x130")) (+ "+") (identifier "iVar9"))) (; ";")) (expression_statement "uVar2 = uVar2 + 1;" (assignment_expression "uVar2 = uVar2 + 1" (identifier "uVar2") (= "=") (binary_expression "uVar2 + 1" (identifier "uVar2") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4))" (( "(") (binary_expression "*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)" (pointer_expression "*(uint *)(iVar6 + 0xe8)" (* "*") (cast_expression "(uint *)(iVar6 + 0xe8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0xe8)" (( "(") (binary_expression "iVar6 + 0xe8" (identifier "iVar6") (+ "+") (number_literal "0xe8")) () ")")))) (<= "<=") (pointer_expression "*(uint *)(iVar6 + 0xe4)" (* "*") (cast_expression "(uint *)(iVar6 + 0xe4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0xe4)" (( "(") (binary_expression "iVar6 + 0xe4" (identifier "iVar6") (+ "+") (number_literal "0xe4")) () ")"))))) () ")")) (; ";")) (} "}"))) (expression_statement "unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6);" (assignment_expression "unaff_s4 = FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6)" (identifier "unaff_s4") (= "=") (call_expression "FUN_000190fc(iVar6,param_2,param_3,param_4,1,param_6)" (identifier "FUN_000190fc") (argument_list "(iVar6,param_2,param_3,param_4,1,param_6)" (( "(") (identifier "iVar6") (, ",") (identifier "param_2") (, ",") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (number_literal "1") (, ",") (identifier "param_6") () ")")))) (; ";")) (goto_statement "goto LAB_00019220;" (goto "goto") (statement_identifier "LAB_00019220") (; ";")) (} "}"))) (labeled_statement "LAB_000191e0:\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);" (statement_identifier "LAB_000191e0") (: ":") (expression_statement "param_4 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "param_4 = (*(code *)PTR_close_0003d128)(param_2)" (identifier "param_4") (= "=") (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" (( "(") (pointer_expression "*(code *)PTR_close_0003d128" (* "*") (cast_expression "(code *)PTR_close_0003d128" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_close_0003d128"))) () ")")) (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";"))) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" (identifier "puVar12") (= "=") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1"))) (; ";")) (if_statement "if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;" (if "if") (parenthesized_expression "((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9))" (( "(") (binary_expression "(param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)" (parenthesized_expression "(param_4 != 0)" (( "(") (binary_expression "param_4 != 0" (identifier "param_4") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(uVar8 = 0x967, *piVar3 == 9)" (( "(") (comma_expression "uVar8 = 0x967, *piVar3 == 9" (assignment_expression "uVar8 = 0x967" (identifier "uVar8") (= "=") (number_literal "0x967")) (, ",") (binary_expression "*piVar3 == 9" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (== "==") (number_literal "9"))) () ")"))) () ")")) (goto_statement "goto LAB_000196e8;" (goto "goto") (statement_identifier "LAB_000196e8") (; ";"))) (labeled_statement "LAB_00019214:\n    unaff_s4 = 0;" (statement_identifier "LAB_00019214") (: ":") (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" (identifier "unaff_s4") (= "=") (number_literal "0")) (; ";"))) (expression_statement "*piVar3 = 0x17;" (assignment_expression "*piVar3 = 0x17" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (= "=") (number_literal "0x17")) (; ";")) (goto_statement "goto LAB_00019220;" (goto "goto") (statement_identifier "LAB_00019220") (; ";")) (} "}"))) (if_statement "if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }\n  else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }" (if "if") (parenthesized_expression "(((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0))" (( "(") (binary_expression "((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)" (parenthesized_expression "((int)param_2 < 0x400)" (( "(") (binary_expression "(int)param_2 < 0x400" (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2")) (< "<") (number_literal "0x400")) () ")")) (|| "||") (parenthesized_expression "((*(uint *)(param_1 + 0xf4) & 0x240) != 0)" (( "(") (binary_expression "(*(uint *)(param_1 + 0xf4) & 0x240) != 0" (parenthesized_expression "(*(uint *)(param_1 + 0xf4) & 0x240)" (( "(") (binary_expression "*(uint *)(param_1 + 0xf4) & 0x240" (pointer_expression "*(uint *)(param_1 + 0xf4)" (* "*") (cast_expression "(uint *)(param_1 + 0xf4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xf4)" (( "(") (binary_expression "param_1 + 0xf4" (identifier "param_1") (+ "+") (number_literal "0xf4")) () ")")))) (& "&") (number_literal "0x240")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n    unaff_s4 = param_1;\n    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }\n    iVar9 = *(int *)(param_1 + 0x70);\n    while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }\n    if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }\nLAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }\nLAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n    if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }\n  }" ({ "{") (expression_statement "unaff_s4 = param_1;" (assignment_expression "unaff_s4 = param_1" (identifier "unaff_s4") (= "=") (identifier "param_1")) (; ";")) (if_statement "if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8))" (( "(") (binary_expression "*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)" (pointer_expression "*(int *)(param_1 + 0xe4)" (* "*") (cast_expression "(int *)(param_1 + 0xe4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xe4)" (( "(") (binary_expression "param_1 + 0xe4" (identifier "param_1") (+ "+") (number_literal "0xe4")) () ")")))) (== "==") (pointer_expression "*(int *)(param_1 + 0xe8)" (* "*") (cast_expression "(int *)(param_1 + 0xe8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xe8)" (( "(") (binary_expression "param_1 + 0xe8" (identifier "param_1") (+ "+") (number_literal "0xe8")) () ")"))))) () ")")) (compound_statement "{\nLAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);\n      param_4 = (*(code *)PTR_close_0003d128)(param_2);\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;\n      goto LAB_000196ec;\n    }" ({ "{") (labeled_statement "LAB_00019504:\n      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);" (statement_identifier "LAB_00019504") (: ":") (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc)" (identifier "FUN_0001e5b0") (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bfc)" (( "(") (identifier "param_1") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x4bfc" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x4bfc")) () ")"))) (; ";"))) (expression_statement "param_4 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "param_4 = (*(code *)PTR_close_0003d128)(param_2)" (identifier "param_4") (= "=") (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" (( "(") (pointer_expression "*(code *)PTR_close_0003d128" (* "*") (cast_expression "(code *)PTR_close_0003d128" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_close_0003d128"))) () ")")) (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";")) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))\n      goto LAB_00019214;" (if "if") (parenthesized_expression "((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))" (( "(") (binary_expression "(param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9)" (parenthesized_expression "(param_4 == 0)" (( "(") (binary_expression "param_4 == 0" (identifier "param_4") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9)" (( "(") (comma_expression "uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9" (assignment_expression "uVar8 = 0x9a5" (identifier "uVar8") (= "=") (number_literal "0x9a5")) (, ",") (comma_expression "puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9" (assignment_expression "puVar4 = (undefined4 *)PTR_DAT_0003d038" (identifier "puVar4") (= "=") (cast_expression "(undefined4 *)PTR_DAT_0003d038" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_DAT_0003d038"))) (, ",") (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (!= "!=") (number_literal "9")))) () ")"))) () ")")) (goto_statement "goto LAB_00019214;" (goto "goto") (statement_identifier "LAB_00019214") (; ";"))) (goto_statement "goto LAB_000196ec;" (goto "goto") (statement_identifier "LAB_000196ec") (; ";")) (} "}"))) (expression_statement "iVar9 = *(int *)(param_1 + 0x70);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x70)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)(param_1 + 0x70)" (* "*") (cast_expression "(int *)(param_1 + 0x70)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x70)" (( "(") (binary_expression "param_1 + 0x70" (identifier "param_1") (+ "+") (number_literal "0x70")) () ")"))))) (; ";")) (while_statement "while (iVar6 = iVar9, iVar6 != 0) {\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }" (while "while") (parenthesized_expression "(iVar6 = iVar9, iVar6 != 0)" (( "(") (comma_expression "iVar6 = iVar9, iVar6 != 0" (assignment_expression "iVar6 = iVar9" (identifier "iVar6") (= "=") (identifier "iVar9")) (, ",") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n      unaff_s4 = iVar6;\n      iVar9 = *(int *)(iVar6 + 0x70);\n    }" ({ "{") (expression_statement "unaff_s4 = iVar6;" (assignment_expression "unaff_s4 = iVar6" (identifier "unaff_s4") (= "=") (identifier "iVar6")) (; ";")) (expression_statement "iVar9 = *(int *)(iVar6 + 0x70);" (assignment_expression "iVar9 = *(int *)(iVar6 + 0x70)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)(iVar6 + 0x70)" (* "*") (cast_expression "(int *)(iVar6 + 0x70)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0x70)" (( "(") (binary_expression "iVar6 + 0x70" (identifier "iVar6") (+ "+") (number_literal "0x70")) () ")"))))) (; ";")) (} "}"))) (if_statement "if (*(int *)(unaff_s4 + 0xf0) != 0) {\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }" (if "if") (parenthesized_expression "(*(int *)(unaff_s4 + 0xf0) != 0)" (( "(") (binary_expression "*(int *)(unaff_s4 + 0xf0) != 0" (pointer_expression "*(int *)(unaff_s4 + 0xf0)" (* "*") (cast_expression "(int *)(unaff_s4 + 0xf0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_s4 + 0xf0)" (( "(") (binary_expression "unaff_s4 + 0xf0" (identifier "unaff_s4") (+ "+") (number_literal "0xf0")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);\n      if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }\n      goto LAB_00019504;\n    }" ({ "{") (expression_statement "unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);" (assignment_expression "unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18)" (identifier "unaff_s8") (= "=") (cast_expression "(int *)(*(code *)PTR_malloc_0003d1e0)(0x18)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_malloc_0003d1e0)(0x18)" (parenthesized_expression "(*(code *)PTR_malloc_0003d1e0)" (( "(") (pointer_expression "*(code *)PTR_malloc_0003d1e0" (* "*") (cast_expression "(code *)PTR_malloc_0003d1e0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_malloc_0003d1e0"))) () ")")) (argument_list "(0x18)" (( "(") (number_literal "0x18") () ")"))))) (; ";")) (if_statement "if (unaff_s8 != (int *)0x0) {\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }" (if "if") (parenthesized_expression "(unaff_s8 != (int *)0x0)" (( "(") (binary_expression "unaff_s8 != (int *)0x0" (identifier "unaff_s8") (!= "!=") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);\n        if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }\n        iVar9 = unaff_s4 + 0x94;\n        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);\n        if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }\nLAB_00019cb4:\n        puVar12 = &_gp_1;\n        entry();\n        goto LAB_00019cc4;\n      }" ({ "{") (expression_statement "iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);" (assignment_expression "iVar9 = FUN_0001850c(param_3,param_4,unaff_s8)" (identifier "iVar9") (= "=") (call_expression "FUN_0001850c(param_3,param_4,unaff_s8)" (identifier "FUN_0001850c") (argument_list "(param_3,param_4,unaff_s8)" (( "(") (identifier "param_3") (, ",") (identifier "param_4") (, ",") (identifier "unaff_s8") () ")")))) (; ";")) (if_statement "if (iVar9 == 0) {\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          (*(code *)PTR_free_0003d250)(unaff_s8);\n          goto LAB_000192ac;\n        }" ({ "{") (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" (( "(") (pointer_expression "*(code *)PTR_free_0003d250" (* "*") (cast_expression "(code *)PTR_free_0003d250" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_0003d250"))) () ")")) (argument_list "(unaff_s8)" (( "(") (identifier "unaff_s8") () ")"))) (; ";")) (goto_statement "goto LAB_000192ac;" (goto "goto") (statement_identifier "LAB_000192ac") (; ";")) (} "}"))) (expression_statement "iVar9 = unaff_s4 + 0x94;" (assignment_expression "iVar9 = unaff_s4 + 0x94" (identifier "iVar9") (= "=") (binary_expression "unaff_s4 + 0x94" (identifier "unaff_s4") (+ "+") (number_literal "0x94"))) (; ";")) (expression_statement "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);" (assignment_expression "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9)" (identifier "iVar6") (= "=") (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" (( "(") (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" (* "*") (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_pthread_mutex_lock_0003d210"))) () ")")) (argument_list "(iVar9)" (( "(") (identifier "iVar9") () ")")))) (; ";")) (if_statement "if (iVar6 == 0) {\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);\n          if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }\n          FUN_000120c0();\n          goto LAB_000196b4;\n        }" ({ "{") (expression_statement "puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);" (assignment_expression "puVar4 = (undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" (identifier "puVar4") (= "=") (cast_expression "(undefined4 *)\n                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" (parenthesized_expression "(*(code *)PTR_tsearch_0003d1a4)" (( "(") (pointer_expression "*(code *)PTR_tsearch_0003d1a4" (* "*") (cast_expression "(code *)PTR_tsearch_0003d1a4" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_tsearch_0003d1a4"))) () ")")) (argument_list "(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760)" (( "(") (identifier "unaff_s8") (, ",") (binary_expression "unaff_s4 + 0x78" (identifier "unaff_s4") (+ "+") (number_literal "0x78")) (, ",") (binary_expression "PTR_0003d028 + 0x7760" (identifier "PTR_0003d028") (+ "+") (number_literal "0x7760")) () ")"))))) (; ";")) (if_statement "if (puVar4 == (undefined4 *)0x0) {\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }\n          else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }" (if "if") (parenthesized_expression "(puVar4 == (undefined4 *)0x0)" (( "(") (binary_expression "puVar4 == (undefined4 *)0x0" (identifier "puVar4") (== "==") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);\n            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n            if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }\n          }" ({ "{") (expression_statement "FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);" (call_expression "FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28)" (identifier "FUN_0001e5b0") (argument_list "(unaff_s4,PTR_DAT_0003d02c + -0x4c28)" (( "(") (identifier "unaff_s4") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x4c28" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x4c28")) () ")"))) (; ";")) (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" (( "(") (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" (* "*") (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_pthread_mutex_unlock_0003d280"))) () ")")) (argument_list "(iVar9)" (( "(") (identifier "iVar9") () ")")))) (; ";")) (if_statement "if (iVar9 == 0) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n              goto LAB_00019504;\n            }" ({ "{") (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" (( "(") (pointer_expression "*(code *)PTR_free_0003d250" (* "*") (cast_expression "(code *)PTR_free_0003d250" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_0003d250"))) () ")")) (argument_list "(unaff_s8)" (( "(") (identifier "unaff_s8") () ")"))) (; ";")) (goto_statement "goto LAB_00019504;" (goto "goto") (statement_identifier "LAB_00019504") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }" (else "else") (compound_statement "{\n            piVar3 = (int *)*puVar4;\n            if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }\n            puVar1 = PTR_pthread_mutex_unlock_0003d280;\n            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }\n          }" ({ "{") (expression_statement "piVar3 = (int *)*puVar4;" (assignment_expression "piVar3 = (int *)*puVar4" (identifier "piVar3") (= "=") (cast_expression "(int *)*puVar4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar4" (* "*") (identifier "puVar4")))) (; ";")) (if_statement "if (unaff_s8 != piVar3) {\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }" (if "if") (parenthesized_expression "(unaff_s8 != piVar3)" (( "(") (binary_expression "unaff_s8 != piVar3" (identifier "unaff_s8") (!= "!=") (identifier "piVar3")) () ")")) (compound_statement "{\n              (*(code *)PTR_free_0003d250)(unaff_s8);\n            }" ({ "{") (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" (( "(") (pointer_expression "*(code *)PTR_free_0003d250" (* "*") (cast_expression "(code *)PTR_free_0003d250" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_0003d250"))) () ")")) (argument_list "(unaff_s8)" (( "(") (identifier "unaff_s8") () ")"))) (; ";")) (} "}"))) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" (identifier "puVar1") (= "=") (identifier "PTR_pthread_mutex_unlock_0003d280")) (; ";")) (if_statement "if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }\n            else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }" (if "if") (parenthesized_expression "((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0))" (( "(") (binary_expression "(uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)" (cast_expression "(uint)piVar3[5]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "piVar3[5]" (identifier "piVar3") ([ "[") (number_literal "5") (] "]"))) (< "<") (pointer_expression "*(uint *)(unaff_s4 + 0xf0)" (* "*") (cast_expression "(uint *)(unaff_s4 + 0xf0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_s4 + 0xf0)" (( "(") (binary_expression "unaff_s4 + 0xf0" (identifier "unaff_s4") (+ "+") (number_literal "0xf0")) () ")"))))) () ")")) (compound_statement "{\n              piVar3[5] = piVar3[5] + 1;\n              iVar9 = (*(code *)puVar1)(iVar9);\n              if (iVar9 == 0) goto LAB_000192ac;\n            }" ({ "{") (expression_statement "piVar3[5] = piVar3[5] + 1;" (assignment_expression "piVar3[5] = piVar3[5] + 1" (subscript_expression "piVar3[5]" (identifier "piVar3") ([ "[") (number_literal "5") (] "]")) (= "=") (binary_expression "piVar3[5] + 1" (subscript_expression "piVar3[5]" (identifier "piVar3") ([ "[") (number_literal "5") (] "]")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar9 = (*(code *)puVar1)(iVar9);" (assignment_expression "iVar9 = (*(code *)puVar1)(iVar9)" (identifier "iVar9") (= "=") (call_expression "(*(code *)puVar1)(iVar9)" (parenthesized_expression "(*(code *)puVar1)" (( "(") (pointer_expression "*(code *)puVar1" (* "*") (cast_expression "(code *)puVar1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1"))) () ")")) (argument_list "(iVar9)" (( "(") (identifier "iVar9") () ")")))) (; ";")) (if_statement "if (iVar9 == 0) goto LAB_000192ac;" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_000192ac;" (goto "goto") (statement_identifier "LAB_000192ac") (; ";"))) (} "}")) (else_clause "else {\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }" (else "else") (compound_statement "{\n              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);\n              if (iVar9 == 0) goto LAB_00019504;\n            }" ({ "{") (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" (( "(") (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" (* "*") (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_pthread_mutex_unlock_0003d280"))) () ")")) (argument_list "(iVar9)" (( "(") (identifier "iVar9") () ")")))) (; ";")) (if_statement "if (iVar9 == 0) goto LAB_00019504;" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00019504;" (goto "goto") (statement_identifier "LAB_00019504") (; ";"))) (} "}")))) (} "}")))) (expression_statement "FUN_000120c0();" (call_expression "FUN_000120c0()" (identifier "FUN_000120c0") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_000196b4;" (goto "goto") (statement_identifier "LAB_000196b4") (; ";")) (} "}"))) (labeled_statement "LAB_00019cb4:\n        puVar12 = &_gp_1;" (statement_identifier "LAB_00019cb4") (: ":") (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" (identifier "puVar12") (= "=") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1"))) (; ";"))) (expression_statement "entry();" (call_expression "entry()" (identifier "entry") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_00019cc4;" (goto "goto") (statement_identifier "LAB_00019cc4") (; ";")) (} "}"))) (goto_statement "goto LAB_00019504;" (goto "goto") (statement_identifier "LAB_00019504") (; ";")) (} "}"))) (labeled_statement "LAB_000192ac:\n    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" (statement_identifier "LAB_000192ac") (: ":") (if_statement "if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)) {\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" (if "if") (parenthesized_expression "((*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0))" (( "(") (binary_expression "(*(code **)(param_1 + 0x40) == (code *)0x0) ||\n       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)" (parenthesized_expression "(*(code **)(param_1 + 0x40) == (code *)0x0)" (( "(") (binary_expression "*(code **)(param_1 + 0x40) == (code *)0x0" (pointer_expression "*(code **)(param_1 + 0x40)" (* "*") (cast_expression "(code **)(param_1 + 0x40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x40)" (( "(") (binary_expression "param_1 + 0x40" (identifier "param_1") (+ "+") (number_literal "0x40")) () ")")))) (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (|| "||") (parenthesized_expression "(unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0)" (( "(") (comma_expression "unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),\n       unaff_s4 != 0" (assignment_expression "unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4)" (identifier "unaff_s4") (= "=") (call_expression "(**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4)" (parenthesized_expression "(**(code **)(param_1 + 0x40))" (( "(") (pointer_expression "**(code **)(param_1 + 0x40)" (* "*") (pointer_expression "*(code **)(param_1 + 0x40)" (* "*") (cast_expression "(code **)(param_1 + 0x40)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x40)" (( "(") (binary_expression "param_1 + 0x40" (identifier "param_1") (+ "+") (number_literal "0x40")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(param_1 + 0x44),param_3,param_4)" (( "(") (pointer_expression "*(undefined4 *)(param_1 + 0x44)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x44)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x44)" (( "(") (binary_expression "param_1 + 0x44" (identifier "param_1") (+ "+") (number_literal "0x44")) () ")")))) (, ",") (identifier "param_3") (, ",") (identifier "param_4") () ")")))) (, ",") (binary_expression "unaff_s4 != 0" (identifier "unaff_s4") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);\n      if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }\n      goto LAB_000196e8;\n    }" ({ "{") (expression_statement "unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);" (assignment_expression "unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0)" (identifier "unaff_s8") (= "=") (cast_expression "(int *)(*(code *)PTR_calloc_0003d120)(1,0xf0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR_calloc_0003d120)(1,0xf0)" (parenthesized_expression "(*(code *)PTR_calloc_0003d120)" (( "(") (pointer_expression "*(code *)PTR_calloc_0003d120" (* "*") (cast_expression "(code *)PTR_calloc_0003d120" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_calloc_0003d120"))) () ")")) (argument_list "(1,0xf0)" (( "(") (number_literal "1") (, ",") (number_literal "0xf0") () ")"))))) (; ";")) (if_statement "if (unaff_s8 == (int *)0x0) {\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }\n      else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }" (if "if") (parenthesized_expression "(unaff_s8 == (int *)0x0)" (( "(") (binary_expression "unaff_s8 == (int *)0x0" (identifier "unaff_s8") (== "==") (cast_expression "(int *)0x0" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n        iVar6 = *piVar3;\n        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n        iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n        puVar12 = &_gp_1;\n        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }\n      }" ({ "{") (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "iVar6 = *piVar3;" (assignment_expression "iVar6 = *piVar3" (identifier "iVar6") (= "=") (pointer_expression "*piVar3" (* "*") (identifier "piVar3"))) (; ";")) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6)" (identifier "uVar8") (= "=") (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar6)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" (( "(") (pointer_expression "*(code *)PTR_strerror_0003d1dc" (* "*") (cast_expression "(code *)PTR_strerror_0003d1dc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strerror_0003d1dc"))) () ")")) (argument_list "(iVar6)" (( "(") (identifier "iVar6") () ")")))) (; ";")) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" (identifier "FUN_0001e5b0") (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" (( "(") (identifier "param_1") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x4bbc" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x4bbc")) (, ",") (identifier "uVar8") () ")"))) (; ";")) (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" (( "(") (pointer_expression "*(code *)PTR_close_0003d128" (* "*") (cast_expression "(code *)PTR_close_0003d128" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_close_0003d128"))) () ")")) (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";")) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" (identifier "puVar12") (= "=") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1"))) (; ";")) (if_statement "if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }" (if "if") (parenthesized_expression "((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9))" (( "(") (binary_expression "(iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)" (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(uVar8 = 0x9ca, *piVar3 != 9)" (( "(") (comma_expression "uVar8 = 0x9ca, *piVar3 != 9" (assignment_expression "uVar8 = 0x9ca" (identifier "uVar8") (= "=") (number_literal "0x9ca")) (, ",") (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (!= "!=") (number_literal "9"))) () ")"))) () ")")) (compound_statement "{\n          unaff_s4 = 0;\n          FUN_0001871c(param_1,param_3,param_4);\n          *piVar3 = iVar6;\n          goto LAB_00019220;\n        }" ({ "{") (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" (identifier "unaff_s4") (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" (identifier "FUN_0001871c") (argument_list "(param_1,param_3,param_4)" (( "(") (identifier "param_1") (, ",") (identifier "param_3") (, ",") (identifier "param_4") () ")"))) (; ";")) (expression_statement "*piVar3 = iVar6;" (assignment_expression "*piVar3 = iVar6" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (= "=") (identifier "iVar6")) (; ";")) (goto_statement "goto LAB_00019220;" (goto "goto") (statement_identifier "LAB_00019220") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }" (else "else") (compound_statement "{\n        uVar8 = *(undefined4 *)(param_1 + 0x7c);\n        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;\n        iVar9 = FUN_0001ea3c(uVar8);\n        unaff_s8[10] = iVar9;\n        puVar1 = PTR_malloc_0003d1e0;\n        if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }\n      }" ({ "{") (expression_statement "uVar8 = *(undefined4 *)(param_1 + 0x7c);" (assignment_expression "uVar8 = *(undefined4 *)(param_1 + 0x7c)" (identifier "uVar8") (= "=") (pointer_expression "*(undefined4 *)(param_1 + 0x7c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x7c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x7c)" (( "(") (binary_expression "param_1 + 0x7c" (identifier "param_1") (+ "+") (number_literal "0x7c")) () ")"))))) (; ";")) (expression_statement "*(undefined1 *)((int)unaff_s8 + 0xa9) = 1;" (assignment_expression "*(undefined1 *)((int)unaff_s8 + 0xa9) = 1" (pointer_expression "*(undefined1 *)((int)unaff_s8 + 0xa9)" (* "*") (cast_expression "(undefined1 *)((int)unaff_s8 + 0xa9)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)unaff_s8 + 0xa9)" (( "(") (binary_expression "(int)unaff_s8 + 0xa9" (cast_expression "(int)unaff_s8" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "unaff_s8")) (+ "+") (number_literal "0xa9")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "iVar9 = FUN_0001ea3c(uVar8);" (assignment_expression "iVar9 = FUN_0001ea3c(uVar8)" (identifier "iVar9") (= "=") (call_expression "FUN_0001ea3c(uVar8)" (identifier "FUN_0001ea3c") (argument_list "(uVar8)" (( "(") (identifier "uVar8") () ")")))) (; ";")) (expression_statement "unaff_s8[10] = iVar9;" (assignment_expression "unaff_s8[10] = iVar9" (subscript_expression "unaff_s8[10]" (identifier "unaff_s8") ([ "[") (number_literal "10") (] "]")) (= "=") (identifier "iVar9")) (; ";")) (expression_statement "puVar1 = PTR_malloc_0003d1e0;" (assignment_expression "puVar1 = PTR_malloc_0003d1e0" (identifier "puVar1") (= "=") (identifier "PTR_malloc_0003d1e0")) (; ";")) (if_statement "if (iVar9 == 0) {\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }\n        else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          puVar12 = &_gp_1;\n          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }\n        }" ({ "{") (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3)" (identifier "uVar8") (= "=") (call_expression "(*(code *)PTR_strerror_0003d1dc)(*piVar3)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" (( "(") (pointer_expression "*(code *)PTR_strerror_0003d1dc" (* "*") (cast_expression "(code *)PTR_strerror_0003d1dc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strerror_0003d1dc"))) () ")")) (argument_list "(*piVar3)" (( "(") (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) () ")")))) (; ";")) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" (identifier "FUN_0001e5b0") (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" (( "(") (identifier "param_1") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x4bbc" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x4bbc")) (, ",") (identifier "uVar8") () ")"))) (; ";")) (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" (( "(") (pointer_expression "*(code *)PTR_close_0003d128" (* "*") (cast_expression "(code *)PTR_close_0003d128" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_close_0003d128"))) () ")")) (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";")) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" (identifier "puVar12") (= "=") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1"))) (; ";")) (if_statement "if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }" (if "if") (parenthesized_expression "((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9))" (( "(") (binary_expression "(iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)" (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(uVar8 = 0x9da, *piVar3 != 9)" (( "(") (comma_expression "uVar8 = 0x9da, *piVar3 != 9" (assignment_expression "uVar8 = 0x9da" (identifier "uVar8") (= "=") (number_literal "0x9da")) (, ",") (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (!= "!=") (number_literal "9"))) () ")"))) () ")")) (compound_statement "{\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = 0xc;\n            goto LAB_00019220;\n          }" ({ "{") (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" (identifier "unaff_s4") (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" (identifier "FUN_0001871c") (argument_list "(param_1,param_3,param_4)" (( "(") (identifier "param_1") (, ",") (identifier "param_3") (, ",") (identifier "param_4") () ")"))) (; ";")) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" (( "(") (pointer_expression "*(code *)PTR_free_0003d250" (* "*") (cast_expression "(code *)PTR_free_0003d250" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_0003d250"))) () ")")) (argument_list "(unaff_s8)" (( "(") (identifier "unaff_s8") () ")"))) (; ";")) (expression_statement "*piVar3 = 0xc;" (assignment_expression "*piVar3 = 0xc" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (= "=") (number_literal "0xc")) (; ";")) (goto_statement "goto LAB_00019220;" (goto "goto") (statement_identifier "LAB_00019220") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }" (else "else") (compound_statement "{\n          unaff_s8[0x26] = *(int *)(param_1 + 0xec);\n          iVar9 = (*(code *)puVar1)(param_4);\n          unaff_s8[0x15] = iVar9;\n          if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }\n          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n          iVar6 = *piVar3;\n          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);\n          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);\n          iVar9 = (*(code *)PTR_close_0003d128)(param_2);\n          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }\n        }" ({ "{") (expression_statement "unaff_s8[0x26] = *(int *)(param_1 + 0xec);" (assignment_expression "unaff_s8[0x26] = *(int *)(param_1 + 0xec)" (subscript_expression "unaff_s8[0x26]" (identifier "unaff_s8") ([ "[") (number_literal "0x26") (] "]")) (= "=") (pointer_expression "*(int *)(param_1 + 0xec)" (* "*") (cast_expression "(int *)(param_1 + 0xec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xec)" (( "(") (binary_expression "param_1 + 0xec" (identifier "param_1") (+ "+") (number_literal "0xec")) () ")"))))) (; ";")) (expression_statement "iVar9 = (*(code *)puVar1)(param_4);" (assignment_expression "iVar9 = (*(code *)puVar1)(param_4)" (identifier "iVar9") (= "=") (call_expression "(*(code *)puVar1)(param_4)" (parenthesized_expression "(*(code *)puVar1)" (( "(") (pointer_expression "*(code *)puVar1" (* "*") (cast_expression "(code *)puVar1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1"))) () ")")) (argument_list "(param_4)" (( "(") (identifier "param_4") () ")")))) (; ";")) (expression_statement "unaff_s8[0x15] = iVar9;" (assignment_expression "unaff_s8[0x15] = iVar9" (subscript_expression "unaff_s8[0x15]" (identifier "unaff_s8") ([ "[") (number_literal "0x15") (] "]")) (= "=") (identifier "iVar9")) (; ";")) (if_statement "if (iVar9 != 0) {\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }" (if "if") (parenthesized_expression "(iVar9 != 0)" (( "(") (binary_expression "iVar9 != 0" (identifier "iVar9") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);\n            unaff_s8[0x24] = param_4;\n            unaff_s8[0x29] = param_2;\n            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;\n            unaff_s8[6] = param_1;\n            iVar9 = FUN_0001f07c();\n            uVar7 = *(uint *)(param_1 + 0xf4);\n            unaff_s8[0x25] = iVar9;\n            if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }\n            iVar6 = param_1 + 0xac;\n            FUN_00014e60(unaff_s8);\n            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);\n            uVar8 = 0xa5d;\n            if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }\n            (**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);\n            goto LAB_00019cb4;\n          }" ({ "{") (expression_statement "(*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);" (call_expression "(*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4)" (parenthesized_expression "(*(code *)PTR_memcpy_0003d248)" (( "(") (pointer_expression "*(code *)PTR_memcpy_0003d248" (* "*") (cast_expression "(code *)PTR_memcpy_0003d248" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_memcpy_0003d248"))) () ")")) (argument_list "(iVar9,param_3,param_4)" (( "(") (identifier "iVar9") (, ",") (identifier "param_3") (, ",") (identifier "param_4") () ")"))) (; ";")) (expression_statement "unaff_s8[0x24] = param_4;" (assignment_expression "unaff_s8[0x24] = param_4" (subscript_expression "unaff_s8[0x24]" (identifier "unaff_s8") ([ "[") (number_literal "0x24") (] "]")) (= "=") (identifier "param_4")) (; ";")) (expression_statement "unaff_s8[0x29] = param_2;" (assignment_expression "unaff_s8[0x29] = param_2" (subscript_expression "unaff_s8[0x29]" (identifier "unaff_s8") ([ "[") (number_literal "0x29") (] "]")) (= "=") (identifier "param_2")) (; ";")) (expression_statement "*(undefined1 *)(unaff_s8 + 0x2a) = param_6;" (assignment_expression "*(undefined1 *)(unaff_s8 + 0x2a) = param_6" (pointer_expression "*(undefined1 *)(unaff_s8 + 0x2a)" (* "*") (cast_expression "(undefined1 *)(unaff_s8 + 0x2a)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_s8 + 0x2a)" (( "(") (binary_expression "unaff_s8 + 0x2a" (identifier "unaff_s8") (+ "+") (number_literal "0x2a")) () ")")))) (= "=") (identifier "param_6")) (; ";")) (expression_statement "unaff_s8[6] = param_1;" (assignment_expression "unaff_s8[6] = param_1" (subscript_expression "unaff_s8[6]" (identifier "unaff_s8") ([ "[") (number_literal "6") (] "]")) (= "=") (identifier "param_1")) (; ";")) (expression_statement "iVar9 = FUN_0001f07c();" (assignment_expression "iVar9 = FUN_0001f07c()" (identifier "iVar9") (= "=") (call_expression "FUN_0001f07c()" (identifier "FUN_0001f07c") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar7 = *(uint *)(param_1 + 0xf4);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0xf4)" (identifier "uVar7") (= "=") (pointer_expression "*(uint *)(param_1 + 0xf4)" (* "*") (cast_expression "(uint *)(param_1 + 0xf4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xf4)" (( "(") (binary_expression "param_1 + 0xf4" (identifier "param_1") (+ "+") (number_literal "0xf4")) () ")"))))) (; ";")) (expression_statement "unaff_s8[0x25] = iVar9;" (assignment_expression "unaff_s8[0x25] = iVar9" (subscript_expression "unaff_s8[0x25]" (identifier "unaff_s8") ([ "[") (number_literal "0x25") (] "]")) (= "=") (identifier "iVar9")) (; ";")) (if_statement "if ((uVar7 & 2) != 0) {\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }" (if "if") (parenthesized_expression "((uVar7 & 2) != 0)" (( "(") (binary_expression "(uVar7 & 2) != 0" (parenthesized_expression "(uVar7 & 2)" (( "(") (binary_expression "uVar7 & 2" (identifier "uVar7") (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n              iVar9 = 0x16;\n              goto LAB_00019374;\n            }" ({ "{") (expression_statement "iVar9 = 0x16;" (assignment_expression "iVar9 = 0x16" (identifier "iVar9") (= "=") (number_literal "0x16")) (; ";")) (goto_statement "goto LAB_00019374;" (goto "goto") (statement_identifier "LAB_00019374") (; ";")) (} "}"))) (expression_statement "iVar6 = param_1 + 0xac;" (assignment_expression "iVar6 = param_1 + 0xac" (identifier "iVar6") (= "=") (binary_expression "param_1 + 0xac" (identifier "param_1") (+ "+") (number_literal "0xac"))) (; ";")) (expression_statement "FUN_00014e60(unaff_s8);" (call_expression "FUN_00014e60(unaff_s8)" (identifier "FUN_00014e60") (argument_list "(unaff_s8)" (( "(") (identifier "unaff_s8") () ")"))) (; ";")) (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" (( "(") (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" (* "*") (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_pthread_mutex_lock_0003d210"))) () ")")) (argument_list "(iVar6)" (( "(") (identifier "iVar6") () ")")))) (; ";")) (expression_statement "uVar8 = 0xa5d;" (assignment_expression "uVar8 = 0xa5d" (identifier "uVar8") (= "=") (number_literal "0xa5d")) (; ";")) (if_statement "if (iVar9 == 0) {\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }\n            else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }\n            }" ({ "{") (if_statement "if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }\n              else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" (if "if") (parenthesized_expression "(*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8))" (( "(") (binary_expression "*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)" (pointer_expression "*(uint *)(param_1 + 0xe4)" (* "*") (cast_expression "(uint *)(param_1 + 0xe4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xe4)" (( "(") (binary_expression "param_1 + 0xe4" (identifier "param_1") (+ "+") (number_literal "0xe4")) () ")")))) (< "<") (pointer_expression "*(uint *)(param_1 + 0xe8)" (* "*") (cast_expression "(uint *)(param_1 + 0xe8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xe8)" (( "(") (binary_expression "param_1 + 0xe8" (identifier "param_1") (+ "+") (number_literal "0xe8")) () ")"))))) () ")")) (compound_statement "{\n                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;\n                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }\n                iVar9 = *(int *)(param_1 + 8);\n                iVar11 = *(int *)(param_1 + 0xc);\n                unaff_s8[3] = 0;\n                unaff_s8[2] = iVar9;\n                if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }\n                puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                *(int **)(param_1 + 8) = unaff_s8;\n                iVar9 = (*(code *)puVar1)(iVar6);\n                uVar8 = 0xa7b;\n                if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }\n              }" ({ "{") (expression_statement "*(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;" (assignment_expression "*(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1" (pointer_expression "*(uint *)(param_1 + 0xe4)" (* "*") (cast_expression "(uint *)(param_1 + 0xe4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xe4)" (( "(") (binary_expression "param_1 + 0xe4" (identifier "param_1") (+ "+") (number_literal "0xe4")) () ")")))) (= "=") (binary_expression "*(uint *)(param_1 + 0xe4) + 1" (pointer_expression "*(uint *)(param_1 + 0xe4)" (* "*") (cast_expression "(uint *)(param_1 + 0xe4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xe4)" (( "(") (binary_expression "param_1 + 0xe4" (identifier "param_1") (+ "+") (number_literal "0xe4")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (if_statement "if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }" (if "if") (parenthesized_expression "((*(uint *)(param_1 + 0xf4) & 4) == 0)" (( "(") (binary_expression "(*(uint *)(param_1 + 0xf4) & 4) == 0" (parenthesized_expression "(*(uint *)(param_1 + 0xf4) & 4)" (( "(") (binary_expression "*(uint *)(param_1 + 0xf4) & 4" (pointer_expression "*(uint *)(param_1 + 0xf4)" (* "*") (cast_expression "(uint *)(param_1 + 0xf4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xf4)" (( "(") (binary_expression "param_1 + 0xf4" (identifier "param_1") (+ "+") (number_literal "0xf4")) () ")")))) (& "&") (number_literal "4")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  iVar9 = *(int *)(param_1 + 0x30);\n                  iVar11 = *(int *)(param_1 + 0x34);\n                  unaff_s8[5] = 0;\n                  unaff_s8[4] = iVar9;\n                  if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }\n                  *(int **)(param_1 + 0x30) = unaff_s8;\n                }" ({ "{") (expression_statement "iVar9 = *(int *)(param_1 + 0x30);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x30)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)(param_1 + 0x30)" (* "*") (cast_expression "(int *)(param_1 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (expression_statement "iVar11 = *(int *)(param_1 + 0x34);" (assignment_expression "iVar11 = *(int *)(param_1 + 0x34)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(param_1 + 0x34)" (* "*") (cast_expression "(int *)(param_1 + 0x34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x34)" (( "(") (binary_expression "param_1 + 0x34" (identifier "param_1") (+ "+") (number_literal "0x34")) () ")"))))) (; ";")) (expression_statement "unaff_s8[5] = 0;" (assignment_expression "unaff_s8[5] = 0" (subscript_expression "unaff_s8[5]" (identifier "unaff_s8") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "unaff_s8[4] = iVar9;" (assignment_expression "unaff_s8[4] = iVar9" (subscript_expression "unaff_s8[4]" (identifier "unaff_s8") ([ "[") (number_literal "4") (] "]")) (= "=") (identifier "iVar9")) (; ";")) (if_statement "if (iVar11 == 0) {\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }\n                  else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    *(int **)(param_1 + 0x34) = unaff_s8;\n                  }" ({ "{") (expression_statement "*(int **)(param_1 + 0x34) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x34) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x34)" (* "*") (cast_expression "(int **)(param_1 + 0x34)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x34)" (( "(") (binary_expression "param_1 + 0x34" (identifier "param_1") (+ "+") (number_literal "0x34")) () ")")))) (= "=") (identifier "unaff_s8")) (; ";")) (} "}")) (else_clause "else {\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }" (else "else") (compound_statement "{\n                    *(int **)(iVar9 + 0x14) = unaff_s8;\n                  }" ({ "{") (expression_statement "*(int **)(iVar9 + 0x14) = unaff_s8;" (assignment_expression "*(int **)(iVar9 + 0x14) = unaff_s8" (pointer_expression "*(int **)(iVar9 + 0x14)" (* "*") (cast_expression "(int **)(iVar9 + 0x14)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 0x14)" (( "(") (binary_expression "iVar9 + 0x14" (identifier "iVar9") (+ "+") (number_literal "0x14")) () ")")))) (= "=") (identifier "unaff_s8")) (; ";")) (} "}")))) (expression_statement "*(int **)(param_1 + 0x30) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x30) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x30)" (* "*") (cast_expression "(int **)(param_1 + 0x30)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")")))) (= "=") (identifier "unaff_s8")) (; ";")) (} "}"))) (expression_statement "iVar9 = *(int *)(param_1 + 8);" (assignment_expression "iVar9 = *(int *)(param_1 + 8)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)(param_1 + 8)" (* "*") (cast_expression "(int *)(param_1 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "iVar11 = *(int *)(param_1 + 0xc);" (assignment_expression "iVar11 = *(int *)(param_1 + 0xc)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (expression_statement "unaff_s8[3] = 0;" (assignment_expression "unaff_s8[3] = 0" (subscript_expression "unaff_s8[3]" (identifier "unaff_s8") ([ "[") (number_literal "3") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "unaff_s8[2] = iVar9;" (assignment_expression "unaff_s8[2] = iVar9" (subscript_expression "unaff_s8[2]" (identifier "unaff_s8") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "iVar9")) (; ";")) (if_statement "if (iVar11 == 0) {\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }\n                else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  *(int **)(param_1 + 0xc) = unaff_s8;\n                }" ({ "{") (expression_statement "*(int **)(param_1 + 0xc) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0xc) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0xc)" (* "*") (cast_expression "(int **)(param_1 + 0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (identifier "unaff_s8")) (; ";")) (} "}")) (else_clause "else {\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }" (else "else") (compound_statement "{\n                  *(int **)(iVar9 + 0xc) = unaff_s8;\n                }" ({ "{") (expression_statement "*(int **)(iVar9 + 0xc) = unaff_s8;" (assignment_expression "*(int **)(iVar9 + 0xc) = unaff_s8" (pointer_expression "*(int **)(iVar9 + 0xc)" (* "*") (cast_expression "(int **)(iVar9 + 0xc)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 0xc)" (( "(") (binary_expression "iVar9 + 0xc" (identifier "iVar9") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (identifier "unaff_s8")) (; ";")) (} "}")))) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" (identifier "puVar1") (= "=") (identifier "PTR_pthread_mutex_unlock_0003d280")) (; ";")) (expression_statement "*(int **)(param_1 + 8) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 8) = unaff_s8" (pointer_expression "*(int **)(param_1 + 8)" (* "*") (cast_expression "(int **)(param_1 + 8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")")))) (= "=") (identifier "unaff_s8")) (; ";")) (expression_statement "iVar9 = (*(code *)puVar1)(iVar6);" (assignment_expression "iVar9 = (*(code *)puVar1)(iVar6)" (identifier "iVar9") (= "=") (call_expression "(*(code *)puVar1)(iVar6)" (parenthesized_expression "(*(code *)puVar1)" (( "(") (pointer_expression "*(code *)puVar1" (* "*") (cast_expression "(code *)puVar1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1"))) () ")")) (argument_list "(iVar6)" (( "(") (identifier "iVar6") () ")")))) (; ";")) (expression_statement "uVar8 = 0xa7b;" (assignment_expression "uVar8 = 0xa7b" (identifier "uVar8") (= "=") (number_literal "0xa7b")) (; ";")) (if_statement "if (iVar9 == 0) {\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }\n                  uVar7 = *(uint *)(param_1 + 0xf4);\n                  if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }\n                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }\n                  local_40[0] = 0x80000007;\n                  local_38 = unaff_s8;\n                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);\n                  if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }\n                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                  iVar9 = *piVar3;\n                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);\nLAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }\n                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);\n                  if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }\n                  iVar11 = param_1 + 0xac;\n                  FUN_0001871c(param_1,param_3,param_4);\n                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);\n                  param_4 = iVar11;\n                  if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }\n                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }\n                  iVar6 = unaff_s8[2];\n                  if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }\n                  if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }\n                  puVar1 = PTR_pthread_mutex_unlock_0003d280;\n                  unaff_s8[2] = 0;\n                  unaff_s8[3] = 0;\n                  iVar6 = (*(code *)puVar1)(iVar11);\n                  if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }\n                  goto LAB_00019c8c;\n                }" ({ "{") (if_statement "if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }" (if "if") (parenthesized_expression "(*(code **)(param_1 + 0x50) != (code *)0x0)" (( "(") (binary_expression "*(code **)(param_1 + 0x50) != (code *)0x0" (pointer_expression "*(code **)(param_1 + 0x50)" (* "*") (cast_expression "(code **)(param_1 + 0x50)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x50)" (( "(") (binary_expression "param_1 + 0x50" (identifier "param_1") (+ "+") (number_literal "0x50")) () ")")))) (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);\n                  }" ({ "{") (expression_statement "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);" (call_expression "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0)" (parenthesized_expression "(**(code **)(param_1 + 0x50))" (( "(") (pointer_expression "**(code **)(param_1 + 0x50)" (* "*") (pointer_expression "*(code **)(param_1 + 0x50)" (* "*") (cast_expression "(code **)(param_1 + 0x50)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x50)" (( "(") (binary_expression "param_1 + 0x50" (identifier "param_1") (+ "+") (number_literal "0x50")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0)" (( "(") (pointer_expression "*(undefined4 *)(param_1 + 0x54)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x54)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x54)" (( "(") (binary_expression "param_1 + 0x54" (identifier "param_1") (+ "+") (number_literal "0x54")) () ")")))) (, ",") (identifier "unaff_s8") (, ",") (binary_expression "unaff_s8 + 0xc" (identifier "unaff_s8") (+ "+") (number_literal "0xc")) (, ",") (number_literal "0") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar7 = *(uint *)(param_1 + 0xf4);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0xf4)" (identifier "uVar7") (= "=") (pointer_expression "*(uint *)(param_1 + 0xf4)" (* "*") (cast_expression "(uint *)(param_1 + 0xf4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xf4)" (( "(") (binary_expression "param_1 + 0xf4" (identifier "param_1") (+ "+") (number_literal "0xf4")) () ")"))))) (; ";")) (if_statement "if ((uVar7 & 4) == 0) {\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }\n                  else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" (if "if") (parenthesized_expression "((uVar7 & 4) == 0)" (( "(") (binary_expression "(uVar7 & 4) == 0" (parenthesized_expression "(uVar7 & 4)" (( "(") (binary_expression "uVar7 & 4" (identifier "uVar7") (& "&") (number_literal "4")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    iVar9 = *(int *)(param_1 + 0x90);\n                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);\n                    unaff_s8[0x17] = iVar9;\n                    if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }\n                  }" ({ "{") (expression_statement "iVar9 = *(int *)(param_1 + 0x90);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x90)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)(param_1 + 0x90)" (* "*") (cast_expression "(int *)(param_1 + 0x90)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x90)" (( "(") (binary_expression "param_1 + 0x90" (identifier "param_1") (+ "+") (number_literal "0x90")) () ")"))))) (; ";")) (expression_statement "unaff_s8[0x16] = *(int *)(param_1 + 0x8c);" (assignment_expression "unaff_s8[0x16] = *(int *)(param_1 + 0x8c)" (subscript_expression "unaff_s8[0x16]" (identifier "unaff_s8") ([ "[") (number_literal "0x16") (] "]")) (= "=") (pointer_expression "*(int *)(param_1 + 0x8c)" (* "*") (cast_expression "(int *)(param_1 + 0x8c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x8c)" (( "(") (binary_expression "param_1 + 0x8c" (identifier "param_1") (+ "+") (number_literal "0x8c")) () ")"))))) (; ";")) (expression_statement "unaff_s8[0x17] = iVar9;" (assignment_expression "unaff_s8[0x17] = iVar9" (subscript_expression "unaff_s8[0x17]" (identifier "unaff_s8") ([ "[") (number_literal "0x17") (] "]")) (= "=") (identifier "iVar9")) (; ";")) (if_statement "if ((uVar7 & 0x200) == 0) {\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }" (if "if") (parenthesized_expression "((uVar7 & 0x200) == 0)" (( "(") (binary_expression "(uVar7 & 0x200) == 0" (parenthesized_expression "(uVar7 & 0x200)" (( "(") (binary_expression "uVar7 & 0x200" (identifier "uVar7") (& "&") (number_literal "0x200")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }\nLAB_00019b00:\n                      unaff_s4 = 1;\n                      goto LAB_00019220;\n                    }" ({ "{") (labeled_statement "LAB_00019b50:\n                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" (statement_identifier "LAB_00019b50") (: ":") (if_statement "if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )) {\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" (if "if") (parenthesized_expression "((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         ))" (( "(") (binary_expression "(((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)) &&\n                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )" (parenthesized_expression "(((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1))" (( "(") (binary_expression "((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&\n                          (iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)" (parenthesized_expression "((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1))" (( "(") (binary_expression "(param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)" (parenthesized_expression "(param_5 != '\0')" (( "(") (binary_expression "param_5 != '\0'" (identifier "param_5") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (&& "&&") (parenthesized_expression "(*(int *)(param_1 + 0xd8) != -1)" (( "(") (binary_expression "*(int *)(param_1 + 0xd8) != -1" (pointer_expression "*(int *)(param_1 + 0xd8)" (* "*") (cast_expression "(int *)(param_1 + 0xd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xd8)" (( "(") (binary_expression "param_1 + 0xd8" (identifier "param_1") (+ "+") (number_literal "0xd8")) () ")")))) (!= "!=") (number_literal "-1")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1)" (( "(") (comma_expression "iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)\n                          , iVar9 < 1" (assignment_expression "iVar9 = (*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_write_0003d1b0)\n                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)" (parenthesized_expression "(*(code *)PTR_write_0003d1b0)" (( "(") (pointer_expression "*(code *)PTR_write_0003d1b0" (* "*") (cast_expression "(code *)PTR_write_0003d1b0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_write_0003d1b0"))) () ")")) (argument_list "(*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)" (( "(") (pointer_expression "*(int *)(param_1 + 0xd8)" (* "*") (cast_expression "(int *)(param_1 + 0xd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xd8)" (( "(") (binary_expression "param_1 + 0xd8" (identifier "param_1") (+ "+") (number_literal "0xd8")) () ")")))) (, ",") (binary_expression "PTR_DAT_0003d02c + -0x3d30" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x3d30")) (, ",") (number_literal "8") () ")")))) (, ",") (binary_expression "iVar9 < 1" (identifier "iVar9") (< "<") (number_literal "1"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb\n                         )" (( "(") (comma_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (, ",") (binary_expression "*piVar3 != 0xb" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (!= "!=") (number_literal "0xb"))) () ")"))) () ")")) (compound_statement "{\n                        unaff_s4 = 1;\n                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);\n                        goto LAB_00019220;\n                      }" ({ "{") (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" (identifier "unaff_s4") (= "=") (number_literal "1")) (; ";")) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c)" (identifier "FUN_0001e5b0") (argument_list "(param_1,PTR_DAT_0003d02c + -0x4b6c)" (( "(") (identifier "param_1") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x4b6c" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x4b6c")) () ")"))) (; ";")) (goto_statement "goto LAB_00019220;" (goto "goto") (statement_identifier "LAB_00019220") (; ";")) (} "}")))) (labeled_statement "LAB_00019b00:\n                      unaff_s4 = 1;" (statement_identifier "LAB_00019b00") (: ":") (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" (identifier "unaff_s4") (= "=") (number_literal "1")) (; ";"))) (goto_statement "goto LAB_00019220;" (goto "goto") (statement_identifier "LAB_00019220") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" (else "else") (compound_statement "{\n                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);\n                    if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }\n                    uVar7 = *(uint *)(param_1 + 0xf4);\n                    if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }\n                  }" ({ "{") (expression_statement "iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8);" (assignment_expression "iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8)" (identifier "iVar9") (= "=") (call_expression "FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8)" (identifier "FUN_000215fc") (argument_list "(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,\n                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,\n                                         unaff_s8)" (( "(") (binary_expression "unaff_s8 + 0x16" (identifier "unaff_s8") (+ "+") (number_literal "0x16")) (, ",") (binary_expression "PTR_DAT_0003d02c + -0x4b9c" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x4b9c")) (, ",") (pointer_expression "*(undefined4 *)(param_1 + 0x84)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x84)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x84)" (( "(") (binary_expression "param_1 + 0x84" (identifier "param_1") (+ "+") (number_literal "0x84")) () ")")))) (, ",") (binary_expression "PTR_LAB_0003d054 + -0x56bc" (identifier "PTR_LAB_0003d054") (+ "+") (number_literal "-0x56bc")) (, ",") (identifier "unaff_s8") () ")")))) (; ";")) (if_statement "if (iVar9 == 0) {\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                      iVar9 = *piVar3;\n                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);\n                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);\n                      goto LAB_00019374;\n                    }" ({ "{") (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "iVar9 = *piVar3;" (assignment_expression "iVar9 = *piVar3" (identifier "iVar9") (= "=") (pointer_expression "*piVar3" (* "*") (identifier "piVar3"))) (; ";")) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9)" (identifier "uVar8") (= "=") (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar9)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" (( "(") (pointer_expression "*(code *)PTR_strerror_0003d1dc" (* "*") (cast_expression "(code *)PTR_strerror_0003d1dc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strerror_0003d1dc"))) () ")")) (argument_list "(iVar9)" (( "(") (identifier "iVar9") () ")")))) (; ";")) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8)" (identifier "FUN_0001e5b0") (argument_list "(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8)" (( "(") (identifier "param_1") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x4b8c" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x4b8c")) (, ",") (identifier "uVar8") () ")"))) (; ";")) (goto_statement "goto LAB_00019374;" (goto "goto") (statement_identifier "LAB_00019374") (; ";")) (} "}"))) (expression_statement "uVar7 = *(uint *)(param_1 + 0xf4);" (assignment_expression "uVar7 = *(uint *)(param_1 + 0xf4)" (identifier "uVar7") (= "=") (pointer_expression "*(uint *)(param_1 + 0xf4)" (* "*") (cast_expression "(uint *)(param_1 + 0xf4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xf4)" (( "(") (binary_expression "param_1 + 0xf4" (identifier "param_1") (+ "+") (number_literal "0xf4")) () ")"))))) (; ";")) (if_statement "if ((uVar7 & 0x200) == 0) {\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }" (if "if") (parenthesized_expression "((uVar7 & 0x200) == 0)" (( "(") (binary_expression "(uVar7 & 0x200) == 0" (parenthesized_expression "(uVar7 & 0x200)" (( "(") (binary_expression "uVar7 & 0x200" (identifier "uVar7") (& "&") (number_literal "0x200")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                      if ((uVar7 & 4) == 0) goto LAB_00019b50;\n                      goto LAB_00019b00;\n                    }" ({ "{") (if_statement "if ((uVar7 & 4) == 0) goto LAB_00019b50;" (if "if") (parenthesized_expression "((uVar7 & 4) == 0)" (( "(") (binary_expression "(uVar7 & 4) == 0" (parenthesized_expression "(uVar7 & 4)" (( "(") (binary_expression "uVar7 & 4" (identifier "uVar7") (& "&") (number_literal "4")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00019b50;" (goto "goto") (statement_identifier "LAB_00019b50") (; ";"))) (goto_statement "goto LAB_00019b00;" (goto "goto") (statement_identifier "LAB_00019b00") (; ";")) (} "}"))) (} "}")))) (if_statement "if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }" (if "if") (parenthesized_expression "(((uVar7 & 0x1000) != 0) && (param_5 == '\0'))" (( "(") (binary_expression "((uVar7 & 0x1000) != 0) && (param_5 == '\0')" (parenthesized_expression "((uVar7 & 0x1000) != 0)" (( "(") (binary_expression "(uVar7 & 0x1000) != 0" (parenthesized_expression "(uVar7 & 0x1000)" (( "(") (binary_expression "uVar7 & 0x1000" (identifier "uVar7") (& "&") (number_literal "0x1000")) () ")")) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(param_5 == '\0')" (( "(") (binary_expression "param_5 == '\0'" (identifier "param_5") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")"))) () ")")) (compound_statement "{\n                    iVar9 = *(int *)(param_1 + 0x20);\n                    iVar6 = *(int *)(param_1 + 0x24);\n                    unaff_s8[1] = 0;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;\n                    *unaff_s8 = iVar9;\n                    if (iVar6 == 0) goto LAB_00019c54;\n                    *(int **)(iVar9 + 4) = unaff_s8;\n                    unaff_s4 = 1;\n                    *(int **)(param_1 + 0x20) = unaff_s8;\n                    goto LAB_00019220;\n                  }" ({ "{") (expression_statement "iVar9 = *(int *)(param_1 + 0x20);" (assignment_expression "iVar9 = *(int *)(param_1 + 0x20)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)(param_1 + 0x20)" (* "*") (cast_expression "(int *)(param_1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")"))))) (; ";")) (expression_statement "iVar6 = *(int *)(param_1 + 0x24);" (assignment_expression "iVar6 = *(int *)(param_1 + 0x24)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(param_1 + 0x24)" (* "*") (cast_expression "(int *)(param_1 + 0x24)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x24)" (( "(") (binary_expression "param_1 + 0x24" (identifier "param_1") (+ "+") (number_literal "0x24")) () ")"))))) (; ";")) (expression_statement "unaff_s8[1] = 0;" (assignment_expression "unaff_s8[1] = 0" (subscript_expression "unaff_s8[1]" (identifier "unaff_s8") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "unaff_s8[0x2c] = unaff_s8[0x2c] | 7;" (assignment_expression "unaff_s8[0x2c] = unaff_s8[0x2c] | 7" (subscript_expression "unaff_s8[0x2c]" (identifier "unaff_s8") ([ "[") (number_literal "0x2c") (] "]")) (= "=") (binary_expression "unaff_s8[0x2c] | 7" (subscript_expression "unaff_s8[0x2c]" (identifier "unaff_s8") ([ "[") (number_literal "0x2c") (] "]")) (| "|") (number_literal "7"))) (; ";")) (expression_statement "*unaff_s8 = iVar9;" (assignment_expression "*unaff_s8 = iVar9" (pointer_expression "*unaff_s8" (* "*") (identifier "unaff_s8")) (= "=") (identifier "iVar9")) (; ";")) (if_statement "if (iVar6 == 0) goto LAB_00019c54;" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00019c54;" (goto "goto") (statement_identifier "LAB_00019c54") (; ";"))) (expression_statement "*(int **)(iVar9 + 4) = unaff_s8;" (assignment_expression "*(int **)(iVar9 + 4) = unaff_s8" (pointer_expression "*(int **)(iVar9 + 4)" (* "*") (cast_expression "(int **)(iVar9 + 4)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar9 + 4)" (( "(") (binary_expression "iVar9 + 4" (identifier "iVar9") (+ "+") (number_literal "4")) () ")")))) (= "=") (identifier "unaff_s8")) (; ";")) (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" (identifier "unaff_s4") (= "=") (number_literal "1")) (; ";")) (expression_statement "*(int **)(param_1 + 0x20) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x20) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x20)" (* "*") (cast_expression "(int **)(param_1 + 0x20)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (= "=") (identifier "unaff_s8")) (; ";")) (goto_statement "goto LAB_00019220;" (goto "goto") (statement_identifier "LAB_00019220") (; ";")) (} "}"))) (expression_statement "local_40[0] = 0x80000007;" (assignment_expression "local_40[0] = 0x80000007" (subscript_expression "local_40[0]" (identifier "local_40") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0x80000007")) (; ";")) (expression_statement "local_38 = unaff_s8;" (assignment_expression "local_38 = unaff_s8" (identifier "local_38") (= "=") (identifier "unaff_s8")) (; ";")) (expression_statement "iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);" (assignment_expression "iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_epoll_ctl_0003d1f8)\n                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40)" (parenthesized_expression "(*(code *)PTR_epoll_ctl_0003d1f8)" (( "(") (pointer_expression "*(code *)PTR_epoll_ctl_0003d1f8" (* "*") (cast_expression "(code *)PTR_epoll_ctl_0003d1f8" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_epoll_ctl_0003d1f8"))) () ")")) (argument_list "(*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40)" (( "(") (pointer_expression "*(undefined4 *)(param_1 + 0xd0)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0xd0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xd0)" (( "(") (binary_expression "param_1 + 0xd0" (identifier "param_1") (+ "+") (number_literal "0xd0")) () ")")))) (, ",") (number_literal "1") (, ",") (identifier "param_2") (, ",") (identifier "local_40") () ")")))) (; ";")) (if_statement "if (iVar9 == 0) {\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    unaff_s4 = 1;\n                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;\n                    goto LAB_00019220;\n                  }" ({ "{") (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" (identifier "unaff_s4") (= "=") (number_literal "1")) (; ";")) (expression_statement "unaff_s8[0x2c] = unaff_s8[0x2c] | 8;" (assignment_expression "unaff_s8[0x2c] = unaff_s8[0x2c] | 8" (subscript_expression "unaff_s8[0x2c]" (identifier "unaff_s8") ([ "[") (number_literal "0x2c") (] "]")) (= "=") (binary_expression "unaff_s8[0x2c] | 8" (subscript_expression "unaff_s8[0x2c]" (identifier "unaff_s8") ([ "[") (number_literal "0x2c") (] "]")) (| "|") (number_literal "8"))) (; ";")) (goto_statement "goto LAB_00019220;" (goto "goto") (statement_identifier "LAB_00019220") (; ";")) (} "}"))) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "iVar9 = *piVar3;" (assignment_expression "iVar9 = *piVar3" (identifier "iVar9") (= "=") (pointer_expression "*piVar3" (* "*") (identifier "piVar3"))) (; ";")) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9)" (identifier "uVar8") (= "=") (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar9)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" (( "(") (pointer_expression "*(code *)PTR_strerror_0003d1dc" (* "*") (cast_expression "(code *)PTR_strerror_0003d1dc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strerror_0003d1dc"))) () ")")) (argument_list "(iVar9)" (( "(") (identifier "iVar9") () ")")))) (; ";")) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8)" (identifier "FUN_0001e5b0") (argument_list "(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8)" (( "(") (identifier "param_1") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x5ea8" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x5ea8")) (, ",") (identifier "uVar8") () ")"))) (; ";")) (labeled_statement "LAB_00019374:\n                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }" (statement_identifier "LAB_00019374") (: ":") (if_statement "if (*(code **)(param_1 + 0x50) != (code *)0x0) {\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }" (if "if") (parenthesized_expression "(*(code **)(param_1 + 0x50) != (code *)0x0)" (( "(") (binary_expression "*(code **)(param_1 + 0x50) != (code *)0x0" (pointer_expression "*(code **)(param_1 + 0x50)" (* "*") (cast_expression "(code **)(param_1 + 0x50)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x50)" (( "(") (binary_expression "param_1 + 0x50" (identifier "param_1") (+ "+") (number_literal "0x50")) () ")")))) (!= "!=") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    (**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);\n                  }" ({ "{") (expression_statement "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);" (call_expression "(**(code **)(param_1 + 0x50))\n                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1)" (parenthesized_expression "(**(code **)(param_1 + 0x50))" (( "(") (pointer_expression "**(code **)(param_1 + 0x50)" (* "*") (pointer_expression "*(code **)(param_1 + 0x50)" (* "*") (cast_expression "(code **)(param_1 + 0x50)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x50)" (( "(") (binary_expression "param_1 + 0x50" (identifier "param_1") (+ "+") (number_literal "0x50")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1)" (( "(") (pointer_expression "*(undefined4 *)(param_1 + 0x54)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x54)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x54)" (( "(") (binary_expression "param_1 + 0x54" (identifier "param_1") (+ "+") (number_literal "0x54")) () ")")))) (, ",") (identifier "unaff_s8") (, ",") (binary_expression "unaff_s8 + 0xc" (identifier "unaff_s8") (+ "+") (number_literal "0xc")) (, ",") (number_literal "1") () ")"))) (; ";")) (} "}")))) (expression_statement "iVar6 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar6 = (*(code *)PTR_close_0003d128)(param_2)" (identifier "iVar6") (= "=") (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" (( "(") (pointer_expression "*(code *)PTR_close_0003d128" (* "*") (cast_expression "(code *)PTR_close_0003d128" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_close_0003d128"))) () ")")) (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";")) (if_statement "if (iVar6 != 0) {\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }" (if "if") (parenthesized_expression "(iVar6 != 0)" (( "(") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    uVar8 = 0xad2;\n                    if (*piVar3 == 9) goto LAB_000196e8;\n                  }" ({ "{") (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "uVar8 = 0xad2;" (assignment_expression "uVar8 = 0xad2" (identifier "uVar8") (= "=") (number_literal "0xad2")) (; ";")) (if_statement "if (*piVar3 == 9) goto LAB_000196e8;" (if "if") (parenthesized_expression "(*piVar3 == 9)" (( "(") (binary_expression "*piVar3 == 9" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (== "==") (number_literal "9")) () ")")) (goto_statement "goto LAB_000196e8;" (goto "goto") (statement_identifier "LAB_000196e8") (; ";"))) (} "}"))) (expression_statement "iVar11 = param_1 + 0xac;" (assignment_expression "iVar11 = param_1 + 0xac" (identifier "iVar11") (= "=") (binary_expression "param_1 + 0xac" (identifier "param_1") (+ "+") (number_literal "0xac"))) (; ";")) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" (identifier "FUN_0001871c") (argument_list "(param_1,param_3,param_4)" (( "(") (identifier "param_1") (, ",") (identifier "param_3") (, ",") (identifier "param_4") () ")"))) (; ";")) (expression_statement "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);" (assignment_expression "iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11)" (identifier "iVar6") (= "=") (call_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_lock_0003d210)" (( "(") (pointer_expression "*(code *)PTR_pthread_mutex_lock_0003d210" (* "*") (cast_expression "(code *)PTR_pthread_mutex_lock_0003d210" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_pthread_mutex_lock_0003d210"))) () ")")) (argument_list "(iVar11)" (( "(") (identifier "iVar11") () ")")))) (; ";")) (expression_statement "param_4 = iVar11;" (assignment_expression "param_4 = iVar11" (identifier "param_4") (= "=") (identifier "iVar11")) (; ";")) (if_statement "if (iVar6 != 0) {\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }" (if "if") (parenthesized_expression "(iVar6 != 0)" (( "(") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    uVar8 = 0xad7;\n                    goto LAB_00019c68;\n                  }" ({ "{") (expression_statement "uVar8 = 0xad7;" (assignment_expression "uVar8 = 0xad7" (identifier "uVar8") (= "=") (number_literal "0xad7")) (; ";")) (goto_statement "goto LAB_00019c68;" (goto "goto") (statement_identifier "LAB_00019c68") (; ";")) (} "}"))) (if_statement "if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }" (if "if") (parenthesized_expression "((*(uint *)(param_1 + 0xf4) & 4) == 0)" (( "(") (binary_expression "(*(uint *)(param_1 + 0xf4) & 4) == 0" (parenthesized_expression "(*(uint *)(param_1 + 0xf4) & 4)" (( "(") (binary_expression "*(uint *)(param_1 + 0xf4) & 4" (pointer_expression "*(uint *)(param_1 + 0xf4)" (* "*") (cast_expression "(uint *)(param_1 + 0xf4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xf4)" (( "(") (binary_expression "param_1 + 0xf4" (identifier "param_1") (+ "+") (number_literal "0xf4")) () ")")))) (& "&") (number_literal "4")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    iVar6 = unaff_s8[4];\n                    if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }\n                    if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }\n                    unaff_s8[4] = 0;\n                    unaff_s8[5] = 0;\n                  }" ({ "{") (expression_statement "iVar6 = unaff_s8[4];" (assignment_expression "iVar6 = unaff_s8[4]" (identifier "iVar6") (= "=") (subscript_expression "unaff_s8[4]" (identifier "unaff_s8") ([ "[") (number_literal "4") (] "]"))) (; ";")) (if_statement "if (unaff_s8[5] == 0) {\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }\n                    else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }" (if "if") (parenthesized_expression "(unaff_s8[5] == 0)" (( "(") (binary_expression "unaff_s8[5] == 0" (subscript_expression "unaff_s8[5]" (identifier "unaff_s8") ([ "[") (number_literal "5") (] "]")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                      *(int *)(param_1 + 0x30) = iVar6;\n                      iVar5 = 0;\n                    }" ({ "{") (expression_statement "*(int *)(param_1 + 0x30) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x30) = iVar6" (pointer_expression "*(int *)(param_1 + 0x30)" (* "*") (cast_expression "(int *)(param_1 + 0x30)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")")))) (= "=") (identifier "iVar6")) (; ";")) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" (identifier "iVar5") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }" (else "else") (compound_statement "{\n                      *(int *)(unaff_s8[5] + 0x10) = iVar6;\n                      iVar6 = unaff_s8[4];\n                      iVar5 = unaff_s8[5];\n                    }" ({ "{") (expression_statement "*(int *)(unaff_s8[5] + 0x10) = iVar6;" (assignment_expression "*(int *)(unaff_s8[5] + 0x10) = iVar6" (pointer_expression "*(int *)(unaff_s8[5] + 0x10)" (* "*") (cast_expression "(int *)(unaff_s8[5] + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_s8[5] + 0x10)" (( "(") (binary_expression "unaff_s8[5] + 0x10" (subscript_expression "unaff_s8[5]" (identifier "unaff_s8") ([ "[") (number_literal "5") (] "]")) (+ "+") (number_literal "0x10")) () ")")))) (= "=") (identifier "iVar6")) (; ";")) (expression_statement "iVar6 = unaff_s8[4];" (assignment_expression "iVar6 = unaff_s8[4]" (identifier "iVar6") (= "=") (subscript_expression "unaff_s8[4]" (identifier "unaff_s8") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "iVar5 = unaff_s8[5];" (assignment_expression "iVar5 = unaff_s8[5]" (identifier "iVar5") (= "=") (subscript_expression "unaff_s8[5]" (identifier "unaff_s8") ([ "[") (number_literal "5") (] "]"))) (; ";")) (} "}")))) (if_statement "if (iVar6 == 0) {\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }\n                    else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                      *(int *)(param_1 + 0x34) = iVar5;\n                    }" ({ "{") (expression_statement "*(int *)(param_1 + 0x34) = iVar5;" (assignment_expression "*(int *)(param_1 + 0x34) = iVar5" (pointer_expression "*(int *)(param_1 + 0x34)" (* "*") (cast_expression "(int *)(param_1 + 0x34)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x34)" (( "(") (binary_expression "param_1 + 0x34" (identifier "param_1") (+ "+") (number_literal "0x34")) () ")")))) (= "=") (identifier "iVar5")) (; ";")) (} "}")) (else_clause "else {\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }" (else "else") (compound_statement "{\n                      *(int *)(iVar6 + 0x14) = iVar5;\n                    }" ({ "{") (expression_statement "*(int *)(iVar6 + 0x14) = iVar5;" (assignment_expression "*(int *)(iVar6 + 0x14) = iVar5" (pointer_expression "*(int *)(iVar6 + 0x14)" (* "*") (cast_expression "(int *)(iVar6 + 0x14)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0x14)" (( "(") (binary_expression "iVar6 + 0x14" (identifier "iVar6") (+ "+") (number_literal "0x14")) () ")")))) (= "=") (identifier "iVar5")) (; ";")) (} "}")))) (expression_statement "unaff_s8[4] = 0;" (assignment_expression "unaff_s8[4] = 0" (subscript_expression "unaff_s8[4]" (identifier "unaff_s8") ([ "[") (number_literal "4") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "unaff_s8[5] = 0;" (assignment_expression "unaff_s8[5] = 0" (subscript_expression "unaff_s8[5]" (identifier "unaff_s8") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "iVar6 = unaff_s8[2];" (assignment_expression "iVar6 = unaff_s8[2]" (identifier "iVar6") (= "=") (subscript_expression "unaff_s8[2]" (identifier "unaff_s8") ([ "[") (number_literal "2") (] "]"))) (; ";")) (if_statement "if (unaff_s8[3] == 0) {\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }\n                  else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }" (if "if") (parenthesized_expression "(unaff_s8[3] == 0)" (( "(") (binary_expression "unaff_s8[3] == 0" (subscript_expression "unaff_s8[3]" (identifier "unaff_s8") ([ "[") (number_literal "3") (] "]")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    *(int *)(param_1 + 8) = iVar6;\n                    iVar5 = 0;\n                  }" ({ "{") (expression_statement "*(int *)(param_1 + 8) = iVar6;" (assignment_expression "*(int *)(param_1 + 8) = iVar6" (pointer_expression "*(int *)(param_1 + 8)" (* "*") (cast_expression "(int *)(param_1 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")")))) (= "=") (identifier "iVar6")) (; ";")) (expression_statement "iVar5 = 0;" (assignment_expression "iVar5 = 0" (identifier "iVar5") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }" (else "else") (compound_statement "{\n                    *(int *)(unaff_s8[3] + 8) = iVar6;\n                    iVar6 = unaff_s8[2];\n                    iVar5 = unaff_s8[3];\n                  }" ({ "{") (expression_statement "*(int *)(unaff_s8[3] + 8) = iVar6;" (assignment_expression "*(int *)(unaff_s8[3] + 8) = iVar6" (pointer_expression "*(int *)(unaff_s8[3] + 8)" (* "*") (cast_expression "(int *)(unaff_s8[3] + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_s8[3] + 8)" (( "(") (binary_expression "unaff_s8[3] + 8" (subscript_expression "unaff_s8[3]" (identifier "unaff_s8") ([ "[") (number_literal "3") (] "]")) (+ "+") (number_literal "8")) () ")")))) (= "=") (identifier "iVar6")) (; ";")) (expression_statement "iVar6 = unaff_s8[2];" (assignment_expression "iVar6 = unaff_s8[2]" (identifier "iVar6") (= "=") (subscript_expression "unaff_s8[2]" (identifier "unaff_s8") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "iVar5 = unaff_s8[3];" (assignment_expression "iVar5 = unaff_s8[3]" (identifier "iVar5") (= "=") (subscript_expression "unaff_s8[3]" (identifier "unaff_s8") ([ "[") (number_literal "3") (] "]"))) (; ";")) (} "}")))) (if_statement "if (iVar6 == 0) {\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }\n                  else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    *(int *)(param_1 + 0xc) = iVar5;\n                  }" ({ "{") (expression_statement "*(int *)(param_1 + 0xc) = iVar5;" (assignment_expression "*(int *)(param_1 + 0xc) = iVar5" (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (identifier "iVar5")) (; ";")) (} "}")) (else_clause "else {\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }" (else "else") (compound_statement "{\n                    *(int *)(iVar6 + 0xc) = iVar5;\n                  }" ({ "{") (expression_statement "*(int *)(iVar6 + 0xc) = iVar5;" (assignment_expression "*(int *)(iVar6 + 0xc) = iVar5" (pointer_expression "*(int *)(iVar6 + 0xc)" (* "*") (cast_expression "(int *)(iVar6 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0xc)" (( "(") (binary_expression "iVar6 + 0xc" (identifier "iVar6") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (identifier "iVar5")) (; ";")) (} "}")))) (expression_statement "puVar1 = PTR_pthread_mutex_unlock_0003d280;" (assignment_expression "puVar1 = PTR_pthread_mutex_unlock_0003d280" (identifier "puVar1") (= "=") (identifier "PTR_pthread_mutex_unlock_0003d280")) (; ";")) (expression_statement "unaff_s8[2] = 0;" (assignment_expression "unaff_s8[2] = 0" (subscript_expression "unaff_s8[2]" (identifier "unaff_s8") ([ "[") (number_literal "2") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "unaff_s8[3] = 0;" (assignment_expression "unaff_s8[3] = 0" (subscript_expression "unaff_s8[3]" (identifier "unaff_s8") ([ "[") (number_literal "3") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar6 = (*(code *)puVar1)(iVar11);" (assignment_expression "iVar6 = (*(code *)puVar1)(iVar11)" (identifier "iVar6") (= "=") (call_expression "(*(code *)puVar1)(iVar11)" (parenthesized_expression "(*(code *)puVar1)" (( "(") (pointer_expression "*(code *)puVar1" (* "*") (cast_expression "(code *)puVar1" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1"))) () ")")) (argument_list "(iVar11)" (( "(") (identifier "iVar11") () ")")))) (; ";")) (if_statement "if (iVar6 == 0) {\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    FUN_0001eb80(unaff_s8[10]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);\n                    (*(code *)PTR_free_0003d250)(unaff_s8);\n                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n                    if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }\n                    goto LAB_000195a8;\n                  }" ({ "{") (expression_statement "FUN_0001eb80(unaff_s8[10]);" (call_expression "FUN_0001eb80(unaff_s8[10])" (identifier "FUN_0001eb80") (argument_list "(unaff_s8[10])" (( "(") (subscript_expression "unaff_s8[10]" (identifier "unaff_s8") ([ "[") (number_literal "10") (] "]")) () ")"))) (; ";")) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8[0x15]);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8[0x15])" (parenthesized_expression "(*(code *)PTR_free_0003d250)" (( "(") (pointer_expression "*(code *)PTR_free_0003d250" (* "*") (cast_expression "(code *)PTR_free_0003d250" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_0003d250"))) () ")")) (argument_list "(unaff_s8[0x15])" (( "(") (subscript_expression "unaff_s8[0x15]" (identifier "unaff_s8") ([ "[") (number_literal "0x15") (] "]")) () ")"))) (; ";")) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" (( "(") (pointer_expression "*(code *)PTR_free_0003d250" (* "*") (cast_expression "(code *)PTR_free_0003d250" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_0003d250"))) () ")")) (argument_list "(unaff_s8)" (( "(") (identifier "unaff_s8") () ")"))) (; ";")) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (if_statement "if (iVar9 != 0) {\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }" (if "if") (parenthesized_expression "(iVar9 != 0)" (( "(") (binary_expression "iVar9 != 0" (identifier "iVar9") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                      *piVar3 = iVar9;\n                      unaff_s4 = 0;\n                      goto LAB_00019220;\n                    }" ({ "{") (expression_statement "*piVar3 = iVar9;" (assignment_expression "*piVar3 = iVar9" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (= "=") (identifier "iVar9")) (; ";")) (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" (identifier "unaff_s4") (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_00019220;" (goto "goto") (statement_identifier "LAB_00019220") (; ";")) (} "}"))) (goto_statement "goto LAB_000195a8;" (goto "goto") (statement_identifier "LAB_000195a8") (; ";")) (} "}"))) (goto_statement "goto LAB_00019c8c;" (goto "goto") (statement_identifier "LAB_00019c8c") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" (else "else") (compound_statement "{\n                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);\n                uVar8 = 0xa63;\n                if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }\n              }" ({ "{") (expression_statement "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);" (assignment_expression "iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6)" (parenthesized_expression "(*(code *)PTR_pthread_mutex_unlock_0003d280)" (( "(") (pointer_expression "*(code *)PTR_pthread_mutex_unlock_0003d280" (* "*") (cast_expression "(code *)PTR_pthread_mutex_unlock_0003d280" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_pthread_mutex_unlock_0003d280"))) () ")")) (argument_list "(iVar6)" (( "(") (identifier "iVar6") () ")")))) (; ";")) (expression_statement "uVar8 = 0xa63;" (assignment_expression "uVar8 = 0xa63" (identifier "uVar8") (= "=") (number_literal "0xa63")) (; ";")) (if_statement "if (iVar9 == 0) {\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  iVar9 = 0x17;\n                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);\n                  goto LAB_00019374;\n                }" ({ "{") (expression_statement "iVar9 = 0x17;" (assignment_expression "iVar9 = 0x17" (identifier "iVar9") (= "=") (number_literal "0x17")) (; ";")) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63)" (identifier "FUN_0001e5b0") (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63)" (( "(") (identifier "param_1") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x4bfc" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x4bfc")) (, ",") (number_literal "0xa63") () ")"))) (; ";")) (goto_statement "goto LAB_00019374;" (goto "goto") (statement_identifier "LAB_00019374") (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }" (else "else") (compound_statement "{\nLAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);\nLAB_00019c8c:\n              uVar8 = 0xae3;\n            }" ({ "{") (labeled_statement "LAB_00019c68:\n              (**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);" (statement_identifier "LAB_00019c68") (: ":") (expression_statement "(**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0);" (call_expression "(**(code **)PTR_DAT_0003d03c)\n                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0)" (parenthesized_expression "(**(code **)PTR_DAT_0003d03c)" (( "(") (pointer_expression "**(code **)PTR_DAT_0003d03c" (* "*") (pointer_expression "*(code **)PTR_DAT_0003d03c" (* "*") (cast_expression "(code **)PTR_DAT_0003d03c" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_DAT_0003d03c")))) () ")")) (argument_list "(*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                         PTR_DAT_0003d02c + -0x62c0)" (( "(") (pointer_expression "*(undefined4 *)PTR_DAT_0003d038" (* "*") (cast_expression "(undefined4 *)PTR_DAT_0003d038" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_DAT_0003d038"))) (, ",") (binary_expression "PTR_DAT_0003d02c + -0x51b0" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x51b0")) (, ",") (identifier "uVar8") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x62c0" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x62c0")) () ")"))) (; ";"))) (labeled_statement "LAB_00019c8c:\n              uVar8 = 0xae3;" (statement_identifier "LAB_00019c8c") (: ":") (expression_statement "uVar8 = 0xae3;" (assignment_expression "uVar8 = 0xae3" (identifier "uVar8") (= "=") (number_literal "0xae3")) (; ";"))) (} "}")))) (expression_statement "(**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298);" (call_expression "(**(code **)PTR_DAT_0003d03c)\n                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298)" (parenthesized_expression "(**(code **)PTR_DAT_0003d03c)" (( "(") (pointer_expression "**(code **)PTR_DAT_0003d03c" (* "*") (pointer_expression "*(code **)PTR_DAT_0003d03c" (* "*") (cast_expression "(code **)PTR_DAT_0003d03c" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_DAT_0003d03c")))) () ")")) (argument_list "(*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,\n                       PTR_DAT_0003d02c + -0x6298)" (( "(") (pointer_expression "*(undefined4 *)PTR_DAT_0003d038" (* "*") (cast_expression "(undefined4 *)PTR_DAT_0003d038" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_DAT_0003d038"))) (, ",") (binary_expression "PTR_DAT_0003d02c + -0x51b0" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x51b0")) (, ",") (identifier "uVar8") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x6298" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x6298")) () ")"))) (; ";")) (goto_statement "goto LAB_00019cb4;" (goto "goto") (statement_identifier "LAB_00019cb4") (; ";")) (} "}"))) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "iVar6 = *piVar3;" (assignment_expression "iVar6 = *piVar3" (identifier "iVar6") (= "=") (pointer_expression "*piVar3" (* "*") (identifier "piVar3"))) (; ";")) (expression_statement "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);" (assignment_expression "uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6)" (identifier "uVar8") (= "=") (call_expression "(*(code *)PTR_strerror_0003d1dc)(iVar6)" (parenthesized_expression "(*(code *)PTR_strerror_0003d1dc)" (( "(") (pointer_expression "*(code *)PTR_strerror_0003d1dc" (* "*") (cast_expression "(code *)PTR_strerror_0003d1dc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_strerror_0003d1dc"))) () ")")) (argument_list "(iVar6)" (( "(") (identifier "iVar6") () ")")))) (; ";")) (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" (identifier "FUN_0001e5b0") (argument_list "(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8)" (( "(") (identifier "param_1") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x4bbc" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x4bbc")) (, ",") (identifier "uVar8") () ")"))) (; ";")) (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" (( "(") (pointer_expression "*(code *)PTR_close_0003d128" (* "*") (cast_expression "(code *)PTR_close_0003d128" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_close_0003d128"))) () ")")) (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";")) (if_statement "if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }" (if "if") (parenthesized_expression "((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9))" (( "(") (binary_expression "(iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)" (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(uVar8 = 0x9ee, *piVar3 != 9)" (( "(") (comma_expression "uVar8 = 0x9ee, *piVar3 != 9" (assignment_expression "uVar8 = 0x9ee" (identifier "uVar8") (= "=") (number_literal "0x9ee")) (, ",") (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (!= "!=") (number_literal "9"))) () ")"))) () ")")) (compound_statement "{\n            unaff_s4 = 0;\n            FUN_0001871c(param_1,param_3,param_4);\n            FUN_0001eb80(unaff_s8[10]);\n            (*(code *)PTR_free_0003d250)(unaff_s8);\n            *piVar3 = iVar6;\n            goto LAB_00019220;\n          }" ({ "{") (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" (identifier "unaff_s4") (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" (identifier "FUN_0001871c") (argument_list "(param_1,param_3,param_4)" (( "(") (identifier "param_1") (, ",") (identifier "param_3") (, ",") (identifier "param_4") () ")"))) (; ";")) (expression_statement "FUN_0001eb80(unaff_s8[10]);" (call_expression "FUN_0001eb80(unaff_s8[10])" (identifier "FUN_0001eb80") (argument_list "(unaff_s8[10])" (( "(") (subscript_expression "unaff_s8[10]" (identifier "unaff_s8") ([ "[") (number_literal "10") (] "]")) () ")"))) (; ";")) (expression_statement "(*(code *)PTR_free_0003d250)(unaff_s8);" (call_expression "(*(code *)PTR_free_0003d250)(unaff_s8)" (parenthesized_expression "(*(code *)PTR_free_0003d250)" (( "(") (pointer_expression "*(code *)PTR_free_0003d250" (* "*") (cast_expression "(code *)PTR_free_0003d250" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_free_0003d250"))) () ")")) (argument_list "(unaff_s8)" (( "(") (identifier "unaff_s8") () ")"))) (; ";")) (expression_statement "*piVar3 = iVar6;" (assignment_expression "*piVar3 = iVar6" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (= "=") (identifier "iVar6")) (; ";")) (goto_statement "goto LAB_00019220;" (goto "goto") (statement_identifier "LAB_00019220") (; ";")) (} "}"))) (} "}")))) (} "}")))) (goto_statement "goto LAB_000196e8;" (goto "goto") (statement_identifier "LAB_000196e8") (; ";")) (} "}")))) (labeled_statement "LAB_000196b4:\n    iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (statement_identifier "LAB_000196b4") (: ":") (expression_statement "iVar9 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "iVar9 = (*(code *)PTR_close_0003d128)(param_2)" (identifier "iVar9") (= "=") (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" (( "(") (pointer_expression "*(code *)PTR_close_0003d128" (* "*") (cast_expression "(code *)PTR_close_0003d128" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_close_0003d128"))) () ")")) (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";"))) (if_statement "if (iVar9 != 0) {\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }" (if "if") (parenthesized_expression "(iVar9 != 0)" (( "(") (binary_expression "iVar9 != 0" (identifier "iVar9") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n      uVar8 = 0x9b8;\n      puVar12 = &_gp_1;\n      if (*piVar3 == 9) goto LAB_000196e8;\n    }" ({ "{") (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "uVar8 = 0x9b8;" (assignment_expression "uVar8 = 0x9b8" (identifier "uVar8") (= "=") (number_literal "0x9b8")) (; ";")) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" (identifier "puVar12") (= "=") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1"))) (; ";")) (if_statement "if (*piVar3 == 9) goto LAB_000196e8;" (if "if") (parenthesized_expression "(*piVar3 == 9)" (( "(") (binary_expression "*piVar3 == 9" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (== "==") (number_literal "9")) () ")")) (goto_statement "goto LAB_000196e8;" (goto "goto") (statement_identifier "LAB_000196e8") (; ";"))) (} "}"))) (} "}")) (else_clause "else {\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }" (else "else") (compound_statement "{\n    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);\n    param_4 = (*(code *)PTR_close_0003d128)(param_2);\n    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();\n    puVar12 = &_gp_1;\n    if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }\nLAB_00019cc4:\n    uVar8 = 0x979;\nLAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);\nLAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);\n  }" ({ "{") (expression_statement "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);" (call_expression "FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400)" (identifier "FUN_0001e5b0") (argument_list "(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400)" (( "(") (identifier "param_1") (, ",") (binary_expression "PTR_DAT_0003d02c + -0x4c5c" (identifier "PTR_DAT_0003d02c") (+ "+") (number_literal "-0x4c5c")) (, ",") (identifier "param_2") (, ",") (number_literal "0x400") () ")"))) (; ";")) (expression_statement "param_4 = (*(code *)PTR_close_0003d128)(param_2);" (assignment_expression "param_4 = (*(code *)PTR_close_0003d128)(param_2)" (identifier "param_4") (= "=") (call_expression "(*(code *)PTR_close_0003d128)(param_2)" (parenthesized_expression "(*(code *)PTR_close_0003d128)" (( "(") (pointer_expression "*(code *)PTR_close_0003d128" (* "*") (cast_expression "(code *)PTR_close_0003d128" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_close_0003d128"))) () ")")) (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";")) (expression_statement "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();" (assignment_expression "piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)()" (identifier "piVar3") (= "=") (cast_expression "(int *)(*(code *)PTR___errno_location_0003d198)()" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(*(code *)PTR___errno_location_0003d198)()" (parenthesized_expression "(*(code *)PTR___errno_location_0003d198)" (( "(") (pointer_expression "*(code *)PTR___errno_location_0003d198" (* "*") (cast_expression "(code *)PTR___errno_location_0003d198" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___errno_location_0003d198"))) () ")")) (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "puVar12 = &_gp_1;" (assignment_expression "puVar12 = &_gp_1" (identifier "puVar12") (= "=") (pointer_expression "&_gp_1" (& "&") (identifier "_gp_1"))) (; ";")) (if_statement "if ((param_4 == 0) || (*piVar3 != 9)) {\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }" (if "if") (parenthesized_expression "((param_4 == 0) || (*piVar3 != 9))" (( "(") (binary_expression "(param_4 == 0) || (*piVar3 != 9)" (parenthesized_expression "(param_4 == 0)" (( "(") (binary_expression "param_4 == 0" (identifier "param_4") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(*piVar3 != 9)" (( "(") (binary_expression "*piVar3 != 9" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (!= "!=") (number_literal "9")) () ")"))) () ")")) (compound_statement "{\nLAB_000195a8:\n      unaff_s4 = 0;\n      *piVar3 = 0x16;\n      goto LAB_00019220;\n    }" ({ "{") (labeled_statement "LAB_000195a8:\n      unaff_s4 = 0;" (statement_identifier "LAB_000195a8") (: ":") (expression_statement "unaff_s4 = 0;" (assignment_expression "unaff_s4 = 0" (identifier "unaff_s4") (= "=") (number_literal "0")) (; ";"))) (expression_statement "*piVar3 = 0x16;" (assignment_expression "*piVar3 = 0x16" (pointer_expression "*piVar3" (* "*") (identifier "piVar3")) (= "=") (number_literal "0x16")) (; ";")) (goto_statement "goto LAB_00019220;" (goto "goto") (statement_identifier "LAB_00019220") (; ";")) (} "}"))) (labeled_statement "LAB_00019cc4:\n    uVar8 = 0x979;" (statement_identifier "LAB_00019cc4") (: ":") (expression_statement "uVar8 = 0x979;" (assignment_expression "uVar8 = 0x979" (identifier "uVar8") (= "=") (number_literal "0x979")) (; ";"))) (labeled_statement "LAB_000196e8:\n    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);" (statement_identifier "LAB_000196e8") (: ":") (expression_statement "puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);" (assignment_expression "puVar4 = *(undefined4 **)(puVar12 + -0x7fc8)" (identifier "puVar4") (= "=") (pointer_expression "*(undefined4 **)(puVar12 + -0x7fc8)" (* "*") (cast_expression "(undefined4 **)(puVar12 + -0x7fc8)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar12 + -0x7fc8)" (( "(") (binary_expression "puVar12 + -0x7fc8" (identifier "puVar12") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";"))) (labeled_statement "LAB_000196ec:\n    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);" (statement_identifier "LAB_000196ec") (: ":") (expression_statement "(*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);" (call_expression "(*(code *)**(undefined4 **)(puVar12 + -0x7fc4))\n              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc)" (parenthesized_expression "(*(code *)**(undefined4 **)(puVar12 + -0x7fc4))" (( "(") (pointer_expression "*(code *)**(undefined4 **)(puVar12 + -0x7fc4)" (* "*") (cast_expression "(code *)**(undefined4 **)(puVar12 + -0x7fc4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(puVar12 + -0x7fc4)" (* "*") (pointer_expression "*(undefined4 **)(puVar12 + -0x7fc4)" (* "*") (cast_expression "(undefined4 **)(puVar12 + -0x7fc4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar12 + -0x7fc4)" (( "(") (binary_expression "puVar12 + -0x7fc4" (identifier "puVar12") (+ "+") (number_literal "-0x7fc4")) () ")"))))))) () ")")) (argument_list "(*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,\n               *(int *)(puVar12 + -0x7fd4) + -0x4cfc)" (( "(") (pointer_expression "*puVar4" (* "*") (identifier "puVar4")) (, ",") (binary_expression "*(int *)(puVar12 + -0x7fd4) + -0x51b0" (pointer_expression "*(int *)(puVar12 + -0x7fd4)" (* "*") (cast_expression "(int *)(puVar12 + -0x7fd4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar12 + -0x7fd4)" (( "(") (binary_expression "puVar12 + -0x7fd4" (identifier "puVar12") (+ "+") (number_literal "-0x7fd4")) () ")")))) (+ "+") (number_literal "-0x51b0")) (, ",") (identifier "uVar8") (, ",") (binary_expression "*(int *)(puVar12 + -0x7fd4) + -0x4cfc" (pointer_expression "*(int *)(puVar12 + -0x7fd4)" (* "*") (cast_expression "(int *)(puVar12 + -0x7fd4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar12 + -0x7fd4)" (( "(") (binary_expression "puVar12 + -0x7fd4" (identifier "puVar12") (+ "+") (number_literal "-0x7fd4")) () ")")))) (+ "+") (number_literal "-0x4cfc")) () ")"))) (; ";"))) (} "}")))) (expression_statement "FUN_0001871c(param_1,param_3,param_4);" (call_expression "FUN_0001871c(param_1,param_3,param_4)" (identifier "FUN_0001871c") (argument_list "(param_1,param_3,param_4)" (( "(") (identifier "param_1") (, ",") (identifier "param_3") (, ",") (identifier "param_4") () ")"))) (; ";")) (labeled_statement "LAB_00019220:\n  while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }" (statement_identifier "LAB_00019220") (: ":") (while_statement "while (local_2c != *piVar10) {\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }" (while "while") (parenthesized_expression "(local_2c != *piVar10)" (( "(") (binary_expression "local_2c != *piVar10" (identifier "local_2c") (!= "!=") (pointer_expression "*piVar10" (* "*") (identifier "piVar10"))) () ")")) (compound_statement "{\n    (*(code *)PTR___stack_chk_fail_0003d21c)();\nLAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;\n    unaff_s4 = 1;\n    *(int **)(param_1 + 0x20) = unaff_s8;\n  }" ({ "{") (expression_statement "(*(code *)PTR___stack_chk_fail_0003d21c)();" (call_expression "(*(code *)PTR___stack_chk_fail_0003d21c)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_0003d21c)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_0003d21c" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_0003d21c" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_0003d21c"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_00019c54:\n    *(int **)(param_1 + 0x24) = unaff_s8;" (statement_identifier "LAB_00019c54") (: ":") (expression_statement "*(int **)(param_1 + 0x24) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x24) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x24)" (* "*") (cast_expression "(int **)(param_1 + 0x24)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x24)" (( "(") (binary_expression "param_1 + 0x24" (identifier "param_1") (+ "+") (number_literal "0x24")) () ")")))) (= "=") (identifier "unaff_s8")) (; ";"))) (expression_statement "unaff_s4 = 1;" (assignment_expression "unaff_s4 = 1" (identifier "unaff_s4") (= "=") (number_literal "1")) (; ";")) (expression_statement "*(int **)(param_1 + 0x20) = unaff_s8;" (assignment_expression "*(int **)(param_1 + 0x20) = unaff_s8" (pointer_expression "*(int **)(param_1 + 0x20)" (* "*") (cast_expression "(int **)(param_1 + 0x20)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (= "=") (identifier "unaff_s8")) (; ";")) (} "}")))) (return_statement "return unaff_s4;" (return "return") (identifier "unaff_s4") (; ";")) (} "}")))

/* WARNING: Enum "MHD_FLAG": Some values do not have unique names */

type_1
function_1
          (type_2 *daemon,type_3 var_4,type_4 *addr,type_5 addrlen,
          type_6 external_add,type_6 non_blck)

{
  type_7 *puVar1;
  int var_43;
  type_8 var_5;
  int *piVar4;
  type_9 *var_25;
  type_4 *var_26;
  type_10 tVar7;
  int var_40;
  type_11 *var_19;
  type_1 var_14;
  type_12 *var_17;
  type_2 *var_11;
  type_13 var_28;
  type_11 *var_32;
  size_t max;
  type_14 MVar15;
  type_8 var_2;
  type_12 uVar17;
  type_2 *var_1;
  int *piVar19;
  type_15 *pMVar20;
  int var_18;
  type_2 *var_22;
  type_11 *var_12;
  type_16 *var_42;
  type_17 event;
  
  piVar19 = (int *)PTR___stack_chk_guard_0003d244;
  var_42 = &_gp;
  var_43 = *(int *)PTR___stack_chk_guard_0003d244;
  if ((external_add) && (var_1 = daemon->worker_pool, var_1 != (type_2 *)0x0)) {
    var_2 = daemon->worker_pool_size;
    if (var_2 != 0) {
      if (var_2 == 0) {
        var_3(7);
      }
      var_11 = var_1 + (type_8)var_4 % var_2;
      var_5 = var_4 + 1;
      if (var_11->connection_limit <= var_11->connections) {
        do {
          if (var_4 + var_2 == var_5) goto LAB_000191e0;
          if (var_2 == 0) {
            var_3(7);
          }
          var_11 = var_1 + var_5 % var_2;
          var_5 = var_5 + 1;
        } while (var_11->connection_limit <= var_11->connections);
      }
      var_22 = (type_2 *)
                 function_1(var_11,var_4,addr,addrlen,true,non_blck);
      goto LAB_00019220;
    }
LAB_000191e0:
    addrlen = (*(type_18 *)PTR_close_0003d128)(var_4);
    piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)();
    var_42 = &_gp;
    if (((type_15 *)addrlen != (type_15 *)0x0) && (uVar17 = 0x967, *piVar4 == 9))
    goto LAB_000196e8;
LAB_00019214:
    var_22 = (type_2 *)0x0;
    *piVar4 = 0x17;
    goto LAB_00019220;
  }
  if ((var_4 < 0x400) || ((daemon->options & (var_6|var_7)) != var_8))
  {
    var_22 = daemon;
    if (daemon->connections == daemon->connection_limit) {
LAB_00019504:
      var_9(daemon,var_10 + -0x4bfc);
      addrlen = (*(type_18 *)PTR_close_0003d128)(var_4);
      piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)();
      if (((type_15 *)addrlen == (type_15 *)0x0) ||
         (uVar17 = 0x9a5, var_17 = (type_12 *)PTR_mhd_panic_cls_0003d038, *piVar4 != 9))
      goto LAB_00019214;
      goto LAB_000196ec;
    }
    var_1 = daemon->master;
    while (var_11 = var_1, var_11 != (type_2 *)0x0) {
      var_22 = var_11;
      var_1 = var_11->master;
    }
    if (var_22->per_ip_connection_limit != 0) {
      var_12 = (type_11 *)(*(type_18 *)PTR_malloc_0003d1e0)(0x18);
      if (var_12 != (type_11 *)0x0) {
        var_14 = var_13(addr,addrlen,(type_19 *)var_12);
        if (var_14 == var_15) {
          (*(type_18 *)PTR_free_0003d250)(var_12);
          goto LAB_000192ac;
        }
        var_1 = (type_2 *)&var_22->per_ip_connection_mutex;
        var_11 = (type_2 *)(*(type_18 *)PTR_pthread_mutex_lock_0003d210)(var_1);
        if (var_11 == (type_2 *)0x0) {
          var_17 = (type_12 *)
                    (*(type_18 *)PTR_tsearch_0003d1a4)
                              (var_12,&var_22->per_ip_connection_count,var_16 + 0x7760);
          if (var_17 == (type_12 *)0x0) {
            var_9(var_22,var_10 + -0x4c28);
            var_18 = (*(type_18 *)PTR_pthread_mutex_unlock_0003d280)();
            if (var_18 == 0) {
              (*(type_18 *)PTR_free_0003d250)(var_12);
              goto LAB_00019504;
            }
          }
          else {
            var_19 = (type_11 *)*var_17;
            if (var_12 != var_19) {
              (*(type_18 *)PTR_free_0003d250)(var_12);
            }
            puVar1 = PTR_pthread_mutex_unlock_0003d280;
            if (var_19->prevX < (type_11 *)var_22->per_ip_connection_limit) {
              var_19->prevX = (type_11 *)((int)&var_19->prevX->nextE + 1);
              var_18 = (*(type_18 *)puVar1)();
              if (var_18 == 0) goto LAB_000192ac;
            }
            else {
              var_18 = (*(type_18 *)PTR_pthread_mutex_unlock_0003d280)();
              if (var_18 == 0) goto LAB_00019504;
            }
          }
          var_20(var_1);
          goto LAB_000196b4;
        }
LAB_00019cb4:
        var_42 = &_gp;
        var_21(var_11);
        goto LAB_00019cc4;
      }
      goto LAB_00019504;
    }
LAB_000192ac:
    if ((daemon->apc == (type_20)0x0) ||
       (var_22 = (type_2 *)(*daemon->apc)(daemon->apc_cls,addr,addrlen),
       var_22 != (type_2 *)0x0)) {
      var_12 = (type_11 *)(*(type_18 *)PTR_calloc_0003d120)(1,0xf0);
      if (var_12 == (type_11 *)0x0) {
        piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)();
        var_40 = *piVar4;
        uVar17 = (*(type_18 *)PTR_strerror_0003d1dc)(var_40);
        var_9(daemon,var_10 + -0x4bbc,uVar17);
        var_18 = (*(type_18 *)PTR_close_0003d128)(var_4);
        var_42 = &_gp;
        if ((var_18 == 0) || (uVar17 = 0x9ca, *piVar4 != 9)) {
          var_22 = (type_2 *)0x0;
          var_23(daemon,addr,addrlen);
          *piVar4 = var_40;
          goto LAB_00019220;
        }
      }
      else {
        max = daemon->pool_size;
        var_12->sk_cork_on = true;
        var_25 = var_24(max);
        var_12->pool = var_25;
        puVar1 = PTR_malloc_0003d1e0;
        if (var_25 == (type_9 *)0x0) {
          piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)();
          uVar17 = (*(type_18 *)PTR_strerror_0003d1dc)(*piVar4);
          var_9(daemon,var_10 + -0x4bbc,uVar17);
          var_18 = (*(type_18 *)PTR_close_0003d128)(var_4);
          var_42 = &_gp;
          if ((var_18 == 0) || (uVar17 = 0x9da, *piVar4 != 9)) {
            var_22 = (type_2 *)0x0;
            var_23(daemon,addr,addrlen);
            (*(type_18 *)PTR_free_0003d250)(var_12);
            *piVar4 = 0xc;
            goto LAB_00019220;
          }
        }
        else {
          var_12->connection_timeout = daemon->connection_timeout;
          var_26 = (type_4 *)(*(type_18 *)puVar1)(addrlen);
          var_12->addr = var_26;
          if (var_26 != (type_4 *)0x0) {
            (*(type_18 *)PTR_memcpy_0003d248)(var_26,addr,addrlen);
            var_12->addr_len = addrlen;
            var_12->socket_fd = var_4;
            var_12->sk_nonblck = non_blck;
            var_12->daemon = daemon;
            tVar7 = var_27();
            var_28 = daemon->options;
            var_12->last_activity = tVar7;
            if ((var_28 & var_29) != var_8) {
              var_18 = 0x16;
              goto LAB_00019374;
            }
            pMVar20 = &daemon->cleanup_connection_mutex;
            var_30(var_12);
            var_18 = (*(type_18 *)PTR_pthread_mutex_lock_0003d210)(pMVar20);
            uVar17 = 0xa5d;
            if (var_18 == 0) {
              if (daemon->connections < daemon->connection_limit) {
                daemon->connections = daemon->connections + 1;
                if ((daemon->options & var_31) == var_8) {
                  var_19 = daemon->normal_timeout_head;
                  var_32 = daemon->normal_timeout_tail;
                  var_12->prevX = (type_11 *)0x0;
                  var_12->nextX = var_19;
                  if (var_32 == (type_11 *)0x0) {
                    daemon->normal_timeout_tail = var_12;
                  }
                  else {
                    var_19->prevX = var_12;
                  }
                  daemon->normal_timeout_head = var_12;
                }
                var_19 = daemon->connections_head;
                var_32 = daemon->connections_tail;
                var_12->prev = (type_11 *)0x0;
                var_12->next = var_19;
                if (var_32 == (type_11 *)0x0) {
                  daemon->connections_tail = var_12;
                }
                else {
                  var_19->prev = var_12;
                }
                puVar1 = PTR_pthread_mutex_unlock_0003d280;
                daemon->connections_head = var_12;
                var_18 = (*(type_18 *)puVar1)(pMVar20);
                uVar17 = 0xa7b;
                if (var_18 == 0) {
                  if (daemon->notify_connection != (type_21)0x0) {
                    (*daemon->notify_connection)
                              (daemon->notify_connection_cls,var_12,&var_12->socket_context,
                               MHD_CONNECTION_NOTIFY_STARTED);
                  }
                  var_28 = daemon->options;
                  if ((var_28 & var_31) == var_8) {
                    MVar15 = (daemon->pid).ID;
                    (var_12->pid).handle = (daemon->pid).handle;
                    (var_12->pid).ID = MVar15;
                    if ((var_28 & var_6) == var_8) {
LAB_00019b50:
                      if ((((external_add) && (var_18 = (daemon->itc).fd, var_18 != -1)) &&
                          (var_18 = (*(type_18 *)PTR_write_0003d1b0)
                                              (var_18,var_10 + -0x3d30,8), var_18 < 1)) &&
                         (piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)(), *piVar4 != 0xb
                         )) {
                        var_22 = (type_2 *)0x1;
                        var_9(daemon,var_10 + -0x4b6c);
                        goto LAB_00019220;
                      }
LAB_00019b00:
                      var_22 = (type_2 *)0x1;
                      goto LAB_00019220;
                    }
                  }
                  else {
                    var_18 = var_33
                                       (&var_12->pid,var_10 + -0x4b9c,
                                        daemon->thread_stack_size,
                                        (MHD_THREAD_START_ROUTINE_)(var_34 + -0x56bc),
                                        var_12);
                    if (var_18 == 0) {
                      piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)();
                      var_18 = *piVar4;
                      uVar17 = (*(type_18 *)PTR_strerror_0003d1dc)(var_18);
                      var_9(daemon,var_10 + -0x4b8c,uVar17);
                      goto LAB_00019374;
                    }
                    var_28 = daemon->options;
                    if ((var_28 & var_6) == var_8) {
                      if ((var_28 & var_31) == var_8)
                      goto LAB_00019b50;
                      goto LAB_00019b00;
                    }
                  }
                  if (((var_28 & var_35) != var_8) && (!external_add)) {
                    var_19 = daemon->eready_head;
                    var_32 = daemon->eready_tail;
                    var_12->prevE = (type_11 *)0x0;
                    var_12->epoll_state =
                         var_12->epoll_state |
                         (var_36|var_37|
                         var_38);
                    var_12->nextE = var_19;
                    if (var_32 == (type_11 *)0x0) goto LAB_00019c54;
                    var_19->prevE = var_12;
                    var_22 = (type_2 *)0x1;
                    daemon->eready_head = var_12;
                    goto LAB_00019220;
                  }
                  event.events = 0x80000007;
                  event.data.fd = (int)var_12;
                  var_18 = (*(type_18 *)PTR_epoll_ctl_0003d1f8)
                                     (daemon->epoll_fd,1,var_4,&event);
                  if (var_18 == 0) {
                    var_22 = (type_2 *)0x1;
                    var_12->epoll_state = var_12->epoll_state | var_39;
                    goto LAB_00019220;
                  }
                  piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)();
                  var_18 = *piVar4;
                  uVar17 = (*(type_18 *)PTR_strerror_0003d1dc)(var_18);
                  var_9(daemon,var_10 + -0x5ea8,uVar17);
LAB_00019374:
                  if (daemon->notify_connection != (type_21)0x0) {
                    (*daemon->notify_connection)
                              (daemon->notify_connection_cls,var_12,&var_12->socket_context,
                               MHD_CONNECTION_NOTIFY_CLOSED);
                  }
                  var_40 = (*(type_18 *)PTR_close_0003d128)(var_4);
                  if (var_40 != 0) {
                    piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)();
                    uVar17 = 0xad2;
                    if (*piVar4 == 9) goto LAB_000196e8;
                  }
                  pMVar20 = &daemon->cleanup_connection_mutex;
                  var_23(daemon,addr,addrlen);
                  var_40 = (*(type_18 *)PTR_pthread_mutex_lock_0003d210)(pMVar20);
                  addrlen = (type_5)pMVar20;
                  if (var_40 != 0) {
                    uVar17 = 0xad7;
                    goto LAB_00019c68;
                  }
                  if ((daemon->options & var_31) == var_8) {
                    var_19 = var_12->nextX;
                    if (var_12->prevX == (type_11 *)0x0) {
                      daemon->normal_timeout_head = var_19;
                      var_32 = (type_11 *)0x0;
                    }
                    else {
                      var_12->prevX->nextX = var_19;
                      var_19 = var_12->nextX;
                      var_32 = var_12->prevX;
                    }
                    if (var_19 == (type_11 *)0x0) {
                      daemon->normal_timeout_tail = var_32;
                    }
                    else {
                      var_19->prevX = var_32;
                    }
                    var_12->nextX = (type_11 *)0x0;
                    var_12->prevX = (type_11 *)0x0;
                  }
                  var_19 = var_12->next;
                  if (var_12->prev == (type_11 *)0x0) {
                    daemon->connections_head = var_19;
                    var_32 = (type_11 *)0x0;
                  }
                  else {
                    var_12->prev->next = var_19;
                    var_19 = var_12->next;
                    var_32 = var_12->prev;
                  }
                  if (var_19 == (type_11 *)0x0) {
                    daemon->connections_tail = var_32;
                  }
                  else {
                    var_19->prev = var_32;
                  }
                  puVar1 = PTR_pthread_mutex_unlock_0003d280;
                  var_12->next = (type_11 *)0x0;
                  var_12->prev = (type_11 *)0x0;
                  var_40 = (*(type_18 *)puVar1)(pMVar20);
                  if (var_40 == 0) {
                    var_41(var_12->pool);
                    (*(type_18 *)PTR_free_0003d250)(var_12->addr);
                    (*(type_18 *)PTR_free_0003d250)(var_12);
                    piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)();
                    if (var_18 != 0) {
                      *piVar4 = var_18;
                      var_22 = (type_2 *)0x0;
                      goto LAB_00019220;
                    }
                    goto LAB_000195a8;
                  }
                  goto LAB_00019c8c;
                }
              }
              else {
                var_18 = (*(type_18 *)PTR_pthread_mutex_unlock_0003d280)(pMVar20);
                uVar17 = 0xa63;
                if (var_18 == 0) {
                  var_18 = 0x17;
                  var_9(daemon,var_10 + -0x4bfc,0xa63);
                  goto LAB_00019374;
                }
              }
            }
            else {
LAB_00019c68:
              (**(type_18 **)PTR_mhd_panic_0003d03c)
                        (*(type_12 *)PTR_mhd_panic_cls_0003d038,var_10 + -0x51b0,uVar17
                         ,var_10 + -0x62c0);
LAB_00019c8c:
              uVar17 = 0xae3;
            }
            var_11 = (type_2 *)
                      (**(type_18 **)PTR_mhd_panic_0003d03c)
                                (*(type_12 *)PTR_mhd_panic_cls_0003d038,
                                 var_10 + -0x51b0,uVar17,var_10 + -0x6298);
            goto LAB_00019cb4;
          }
          piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)();
          var_40 = *piVar4;
          uVar17 = (*(type_18 *)PTR_strerror_0003d1dc)(var_40);
          var_9(daemon,var_10 + -0x4bbc,uVar17);
          var_18 = (*(type_18 *)PTR_close_0003d128)(var_4);
          if ((var_18 == 0) || (uVar17 = 0x9ee, *piVar4 != 9)) {
            var_22 = (type_2 *)0x0;
            var_23(daemon,addr,addrlen);
            var_41(var_12->pool);
            (*(type_18 *)PTR_free_0003d250)(var_12);
            *piVar4 = var_40;
            goto LAB_00019220;
          }
        }
      }
      goto LAB_000196e8;
    }
LAB_000196b4:
    var_18 = (*(type_18 *)PTR_close_0003d128)(var_4);
    if (var_18 != 0) {
      piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)();
      uVar17 = 0x9b8;
      var_42 = &_gp;
      if (*piVar4 == 9) goto LAB_000196e8;
    }
  }
  else {
    var_9(daemon,var_10 + -0x4c5c,var_4,0x400);
    addrlen = (*(type_18 *)PTR_close_0003d128)(var_4);
    piVar4 = (int *)(*(type_18 *)PTR___errno_location_0003d198)();
    var_42 = &_gp;
    if (((type_15 *)addrlen == (type_15 *)0x0) || (*piVar4 != 9)) {
LAB_000195a8:
      var_22 = (type_2 *)0x0;
      *piVar4 = 0x16;
      goto LAB_00019220;
    }
LAB_00019cc4:
    uVar17 = 0x979;
LAB_000196e8:
    var_17 = *(type_12 **)(var_42 + -0x7fc8);
LAB_000196ec:
    (*(type_18 *)**(type_12 **)(var_42 + -0x7fc4))
              (*var_17,*(int *)(var_42 + -0x7fd4) + -0x51b0,uVar17,
               *(int *)(var_42 + -0x7fd4) + -0x4cfc);
  }
  var_23(daemon,addr,addrlen);
LAB_00019220:
  while (var_43 != *piVar19) {
    (*(type_18 *)PTR___stack_chk_fail_0003d21c)();
LAB_00019c54:
    daemon->eready_tail = var_12;
    var_22 = (type_2 *)0x1;
    daemon->eready_head = var_12;
  }
  return (type_1)var_22;
}


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

int MASKED(int param_1,uint param_2,undefined4 param_3,int param_4,char param_5,
                undefined1 param_6)

{
  undefined *puVar1;
  uint uVar2;
  int *piVar3;
  undefined4 *puVar4;
  int iVar5;
  int iVar6;
  uint uVar7;
  undefined4 uVar8;
  int iVar9;
  int *piVar10;
  int iVar11;
  int unaff_s4;
  int *unaff_s8;
  undefined1 *puVar12;
  undefined4 local_40 [2];
  int *local_38;
  int local_2c;
  
  piVar10 = (int *)PTR___stack_chk_guard_0003d244;
  puVar12 = &_gp_1;
  local_2c = *(int *)PTR___stack_chk_guard_0003d244;
  if ((param_5 != '\0') && (iVar9 = *(int *)(param_1 + 0x74), iVar9 != 0)) {
    uVar7 = *(uint *)(param_1 + 0x88);
    if (uVar7 != 0) {
      if (uVar7 == 0) {
        trap(7);
      }
      iVar6 = (param_2 % uVar7) * 0x130 + iVar9;
      uVar2 = param_2 + 1;
      if (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4)) {
        do {
          if (param_2 + uVar7 == uVar2) goto LAB_000191e0;
          if (uVar7 == 0) {
            trap(7);
          }
          iVar6 = (uVar2 % uVar7) * 0x130 + iVar9;
          uVar2 = uVar2 + 1;
        } while (*(uint *)(iVar6 + 0xe8) <= *(uint *)(iVar6 + 0xe4));
      }
      unaff_s4 = MASKED(iVar6,param_2,param_3,param_4,1,param_6);
      goto LAB_00019220;
    }
LAB_000191e0:
    param_4 = (*(code *)PTR_close_0003d128)(param_2);
    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
    puVar12 = &_gp_1;
    if ((param_4 != 0) && (uVar8 = 0x967, *piVar3 == 9)) goto LAB_000196e8;
LAB_00019214:
    unaff_s4 = 0;
    *piVar3 = 0x17;
    goto LAB_00019220;
  }
  if (((int)param_2 < 0x400) || ((*(uint *)(param_1 + 0xf4) & 0x240) != 0)) {
    unaff_s4 = param_1;
    if (*(int *)(param_1 + 0xe4) == *(int *)(param_1 + 0xe8)) {
LAB_00019504:
      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc);
      param_4 = (*(code *)PTR_close_0003d128)(param_2);
      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
      if ((param_4 == 0) || (uVar8 = 0x9a5, puVar4 = (undefined4 *)PTR_DAT_0003d038, *piVar3 != 9))
      goto LAB_00019214;
      goto LAB_000196ec;
    }
    iVar9 = *(int *)(param_1 + 0x70);
    while (iVar6 = iVar9, iVar6 != 0) {
      unaff_s4 = iVar6;
      iVar9 = *(int *)(iVar6 + 0x70);
    }
    if (*(int *)(unaff_s4 + 0xf0) != 0) {
      unaff_s8 = (int *)(*(code *)PTR_malloc_0003d1e0)(0x18);
      if (unaff_s8 != (int *)0x0) {
        iVar9 = FUN_0001850c(param_3,param_4,unaff_s8);
        if (iVar9 == 0) {
          (*(code *)PTR_free_0003d250)(unaff_s8);
          goto LAB_000192ac;
        }
        iVar9 = unaff_s4 + 0x94;
        iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar9);
        if (iVar6 == 0) {
          puVar4 = (undefined4 *)
                   (*(code *)PTR_tsearch_0003d1a4)(unaff_s8,unaff_s4 + 0x78,PTR_0003d028 + 0x7760);
          if (puVar4 == (undefined4 *)0x0) {
            FUN_0001e5b0(unaff_s4,PTR_DAT_0003d02c + -0x4c28);
            iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);
            if (iVar9 == 0) {
              (*(code *)PTR_free_0003d250)(unaff_s8);
              goto LAB_00019504;
            }
          }
          else {
            piVar3 = (int *)*puVar4;
            if (unaff_s8 != piVar3) {
              (*(code *)PTR_free_0003d250)(unaff_s8);
            }
            puVar1 = PTR_pthread_mutex_unlock_0003d280;
            if ((uint)piVar3[5] < *(uint *)(unaff_s4 + 0xf0)) {
              piVar3[5] = piVar3[5] + 1;
              iVar9 = (*(code *)puVar1)(iVar9);
              if (iVar9 == 0) goto LAB_000192ac;
            }
            else {
              iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar9);
              if (iVar9 == 0) goto LAB_00019504;
            }
          }
          FUN_000120c0();
          goto LAB_000196b4;
        }
LAB_00019cb4:
        puVar12 = &_gp_1;
        entry();
        goto LAB_00019cc4;
      }
      goto LAB_00019504;
    }
LAB_000192ac:
    if ((*(code **)(param_1 + 0x40) == (code *)0x0) ||
       (unaff_s4 = (**(code **)(param_1 + 0x40))(*(undefined4 *)(param_1 + 0x44),param_3,param_4),
       unaff_s4 != 0)) {
      unaff_s8 = (int *)(*(code *)PTR_calloc_0003d120)(1,0xf0);
      if (unaff_s8 == (int *)0x0) {
        piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
        iVar6 = *piVar3;
        uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);
        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);
        iVar9 = (*(code *)PTR_close_0003d128)(param_2);
        puVar12 = &_gp_1;
        if ((iVar9 == 0) || (uVar8 = 0x9ca, *piVar3 != 9)) {
          unaff_s4 = 0;
          FUN_0001871c(param_1,param_3,param_4);
          *piVar3 = iVar6;
          goto LAB_00019220;
        }
      }
      else {
        uVar8 = *(undefined4 *)(param_1 + 0x7c);
        *(undefined1 *)((int)unaff_s8 + 0xa9) = 1;
        iVar9 = FUN_0001ea3c(uVar8);
        unaff_s8[10] = iVar9;
        puVar1 = PTR_malloc_0003d1e0;
        if (iVar9 == 0) {
          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
          uVar8 = (*(code *)PTR_strerror_0003d1dc)(*piVar3);
          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);
          iVar9 = (*(code *)PTR_close_0003d128)(param_2);
          puVar12 = &_gp_1;
          if ((iVar9 == 0) || (uVar8 = 0x9da, *piVar3 != 9)) {
            unaff_s4 = 0;
            FUN_0001871c(param_1,param_3,param_4);
            (*(code *)PTR_free_0003d250)(unaff_s8);
            *piVar3 = 0xc;
            goto LAB_00019220;
          }
        }
        else {
          unaff_s8[0x26] = *(int *)(param_1 + 0xec);
          iVar9 = (*(code *)puVar1)(param_4);
          unaff_s8[0x15] = iVar9;
          if (iVar9 != 0) {
            (*(code *)PTR_memcpy_0003d248)(iVar9,param_3,param_4);
            unaff_s8[0x24] = param_4;
            unaff_s8[0x29] = param_2;
            *(undefined1 *)(unaff_s8 + 0x2a) = param_6;
            unaff_s8[6] = param_1;
            iVar9 = FUN_0001f07c();
            uVar7 = *(uint *)(param_1 + 0xf4);
            unaff_s8[0x25] = iVar9;
            if ((uVar7 & 2) != 0) {
              iVar9 = 0x16;
              goto LAB_00019374;
            }
            iVar6 = param_1 + 0xac;
            FUN_00014e60(unaff_s8);
            iVar9 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar6);
            uVar8 = 0xa5d;
            if (iVar9 == 0) {
              if (*(uint *)(param_1 + 0xe4) < *(uint *)(param_1 + 0xe8)) {
                *(uint *)(param_1 + 0xe4) = *(uint *)(param_1 + 0xe4) + 1;
                if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {
                  iVar9 = *(int *)(param_1 + 0x30);
                  iVar11 = *(int *)(param_1 + 0x34);
                  unaff_s8[5] = 0;
                  unaff_s8[4] = iVar9;
                  if (iVar11 == 0) {
                    *(int **)(param_1 + 0x34) = unaff_s8;
                  }
                  else {
                    *(int **)(iVar9 + 0x14) = unaff_s8;
                  }
                  *(int **)(param_1 + 0x30) = unaff_s8;
                }
                iVar9 = *(int *)(param_1 + 8);
                iVar11 = *(int *)(param_1 + 0xc);
                unaff_s8[3] = 0;
                unaff_s8[2] = iVar9;
                if (iVar11 == 0) {
                  *(int **)(param_1 + 0xc) = unaff_s8;
                }
                else {
                  *(int **)(iVar9 + 0xc) = unaff_s8;
                }
                puVar1 = PTR_pthread_mutex_unlock_0003d280;
                *(int **)(param_1 + 8) = unaff_s8;
                iVar9 = (*(code *)puVar1)(iVar6);
                uVar8 = 0xa7b;
                if (iVar9 == 0) {
                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {
                    (**(code **)(param_1 + 0x50))
                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,0);
                  }
                  uVar7 = *(uint *)(param_1 + 0xf4);
                  if ((uVar7 & 4) == 0) {
                    iVar9 = *(int *)(param_1 + 0x90);
                    unaff_s8[0x16] = *(int *)(param_1 + 0x8c);
                    unaff_s8[0x17] = iVar9;
                    if ((uVar7 & 0x200) == 0) {
LAB_00019b50:
                      if ((((param_5 != '\0') && (*(int *)(param_1 + 0xd8) != -1)) &&
                          (iVar9 = (*(code *)PTR_write_0003d1b0)
                                             (*(int *)(param_1 + 0xd8),PTR_DAT_0003d02c + -0x3d30,8)
                          , iVar9 < 1)) &&
                         (piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)(), *piVar3 != 0xb
                         )) {
                        unaff_s4 = 1;
                        FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b6c);
                        goto LAB_00019220;
                      }
LAB_00019b00:
                      unaff_s4 = 1;
                      goto LAB_00019220;
                    }
                  }
                  else {
                    iVar9 = FUN_000215fc(unaff_s8 + 0x16,PTR_DAT_0003d02c + -0x4b9c,
                                         *(undefined4 *)(param_1 + 0x84),PTR_LAB_0003d054 + -0x56bc,
                                         unaff_s8);
                    if (iVar9 == 0) {
                      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
                      iVar9 = *piVar3;
                      uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);
                      FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4b8c,uVar8);
                      goto LAB_00019374;
                    }
                    uVar7 = *(uint *)(param_1 + 0xf4);
                    if ((uVar7 & 0x200) == 0) {
                      if ((uVar7 & 4) == 0) goto LAB_00019b50;
                      goto LAB_00019b00;
                    }
                  }
                  if (((uVar7 & 0x1000) != 0) && (param_5 == '\0')) {
                    iVar9 = *(int *)(param_1 + 0x20);
                    iVar6 = *(int *)(param_1 + 0x24);
                    unaff_s8[1] = 0;
                    unaff_s8[0x2c] = unaff_s8[0x2c] | 7;
                    *unaff_s8 = iVar9;
                    if (iVar6 == 0) goto LAB_00019c54;
                    *(int **)(iVar9 + 4) = unaff_s8;
                    unaff_s4 = 1;
                    *(int **)(param_1 + 0x20) = unaff_s8;
                    goto LAB_00019220;
                  }
                  local_40[0] = 0x80000007;
                  local_38 = unaff_s8;
                  iVar9 = (*(code *)PTR_epoll_ctl_0003d1f8)
                                    (*(undefined4 *)(param_1 + 0xd0),1,param_2,local_40);
                  if (iVar9 == 0) {
                    unaff_s4 = 1;
                    unaff_s8[0x2c] = unaff_s8[0x2c] | 8;
                    goto LAB_00019220;
                  }
                  piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
                  iVar9 = *piVar3;
                  uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar9);
                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x5ea8,uVar8);
LAB_00019374:
                  if (*(code **)(param_1 + 0x50) != (code *)0x0) {
                    (**(code **)(param_1 + 0x50))
                              (*(undefined4 *)(param_1 + 0x54),unaff_s8,unaff_s8 + 0xc,1);
                  }
                  iVar6 = (*(code *)PTR_close_0003d128)(param_2);
                  if (iVar6 != 0) {
                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
                    uVar8 = 0xad2;
                    if (*piVar3 == 9) goto LAB_000196e8;
                  }
                  iVar11 = param_1 + 0xac;
                  FUN_0001871c(param_1,param_3,param_4);
                  iVar6 = (*(code *)PTR_pthread_mutex_lock_0003d210)(iVar11);
                  param_4 = iVar11;
                  if (iVar6 != 0) {
                    uVar8 = 0xad7;
                    goto LAB_00019c68;
                  }
                  if ((*(uint *)(param_1 + 0xf4) & 4) == 0) {
                    iVar6 = unaff_s8[4];
                    if (unaff_s8[5] == 0) {
                      *(int *)(param_1 + 0x30) = iVar6;
                      iVar5 = 0;
                    }
                    else {
                      *(int *)(unaff_s8[5] + 0x10) = iVar6;
                      iVar6 = unaff_s8[4];
                      iVar5 = unaff_s8[5];
                    }
                    if (iVar6 == 0) {
                      *(int *)(param_1 + 0x34) = iVar5;
                    }
                    else {
                      *(int *)(iVar6 + 0x14) = iVar5;
                    }
                    unaff_s8[4] = 0;
                    unaff_s8[5] = 0;
                  }
                  iVar6 = unaff_s8[2];
                  if (unaff_s8[3] == 0) {
                    *(int *)(param_1 + 8) = iVar6;
                    iVar5 = 0;
                  }
                  else {
                    *(int *)(unaff_s8[3] + 8) = iVar6;
                    iVar6 = unaff_s8[2];
                    iVar5 = unaff_s8[3];
                  }
                  if (iVar6 == 0) {
                    *(int *)(param_1 + 0xc) = iVar5;
                  }
                  else {
                    *(int *)(iVar6 + 0xc) = iVar5;
                  }
                  puVar1 = PTR_pthread_mutex_unlock_0003d280;
                  unaff_s8[2] = 0;
                  unaff_s8[3] = 0;
                  iVar6 = (*(code *)puVar1)(iVar11);
                  if (iVar6 == 0) {
                    FUN_0001eb80(unaff_s8[10]);
                    (*(code *)PTR_free_0003d250)(unaff_s8[0x15]);
                    (*(code *)PTR_free_0003d250)(unaff_s8);
                    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
                    if (iVar9 != 0) {
                      *piVar3 = iVar9;
                      unaff_s4 = 0;
                      goto LAB_00019220;
                    }
                    goto LAB_000195a8;
                  }
                  goto LAB_00019c8c;
                }
              }
              else {
                iVar9 = (*(code *)PTR_pthread_mutex_unlock_0003d280)(iVar6);
                uVar8 = 0xa63;
                if (iVar9 == 0) {
                  iVar9 = 0x17;
                  FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bfc,0xa63);
                  goto LAB_00019374;
                }
              }
            }
            else {
LAB_00019c68:
              (**(code **)PTR_DAT_0003d03c)
                        (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,
                         PTR_DAT_0003d02c + -0x62c0);
LAB_00019c8c:
              uVar8 = 0xae3;
            }
            (**(code **)PTR_DAT_0003d03c)
                      (*(undefined4 *)PTR_DAT_0003d038,PTR_DAT_0003d02c + -0x51b0,uVar8,
                       PTR_DAT_0003d02c + -0x6298);
            goto LAB_00019cb4;
          }
          piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
          iVar6 = *piVar3;
          uVar8 = (*(code *)PTR_strerror_0003d1dc)(iVar6);
          FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4bbc,uVar8);
          iVar9 = (*(code *)PTR_close_0003d128)(param_2);
          if ((iVar9 == 0) || (uVar8 = 0x9ee, *piVar3 != 9)) {
            unaff_s4 = 0;
            FUN_0001871c(param_1,param_3,param_4);
            FUN_0001eb80(unaff_s8[10]);
            (*(code *)PTR_free_0003d250)(unaff_s8);
            *piVar3 = iVar6;
            goto LAB_00019220;
          }
        }
      }
      goto LAB_000196e8;
    }
LAB_000196b4:
    iVar9 = (*(code *)PTR_close_0003d128)(param_2);
    if (iVar9 != 0) {
      piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
      uVar8 = 0x9b8;
      puVar12 = &_gp_1;
      if (*piVar3 == 9) goto LAB_000196e8;
    }
  }
  else {
    FUN_0001e5b0(param_1,PTR_DAT_0003d02c + -0x4c5c,param_2,0x400);
    param_4 = (*(code *)PTR_close_0003d128)(param_2);
    piVar3 = (int *)(*(code *)PTR___errno_location_0003d198)();
    puVar12 = &_gp_1;
    if ((param_4 == 0) || (*piVar3 != 9)) {
LAB_000195a8:
      unaff_s4 = 0;
      *piVar3 = 0x16;
      goto LAB_00019220;
    }
LAB_00019cc4:
    uVar8 = 0x979;
LAB_000196e8:
    puVar4 = *(undefined4 **)(puVar12 + -0x7fc8);
LAB_000196ec:
    (*(code *)**(undefined4 **)(puVar12 + -0x7fc4))
              (*puVar4,*(int *)(puVar12 + -0x7fd4) + -0x51b0,uVar8,
               *(int *)(puVar12 + -0x7fd4) + -0x4cfc);
  }
  FUN_0001871c(param_1,param_3,param_4);
LAB_00019220:
  while (local_2c != *piVar10) {
    (*(code *)PTR___stack_chk_fail_0003d21c)();
LAB_00019c54:
    *(int **)(param_1 + 0x24) = unaff_s8;
    unaff_s4 = 1;
    *(int **)(param_1 + 0x20) = unaff_s8;
  }
  return unaff_s4;
}

